lps22h — sensor de pressão LPS22HB/HH¶
Driver para o sensor de pressão nano MEMS ST LPS22HB / LPS22HH via I2C. O dispositivo expõe tanto a pressão barométrica quanto uma leitura de temperatura do die, e pode operar continuamente ou em modo de disparo único (“one-shot”), no qual cada medição é acionada explicitamente pelo host.
Exemplo:
import time
from machine import Pin, I2C
from lps22h import LPS22H
bus = I2C(1, scl=Pin("P15"), sda=Pin("P14"))
lps = LPS22H(bus, oneshot=False)
while True:
print("Pressure: %.2f hPa Temperature: %.2f C" %
(lps.pressure(), lps.temperature()))
time.sleep_ms(10)
Classes¶
- class lps22h.LPS22H(bus: machine.I2C, address: int = 0x5C, oneshot: bool = False)¶
Constrói uma instância de
LPS22He configura o dispositivo com o BDU habilitado e o filtro passa-baixa ativo.busUm barramento
machine.I2Cconfigurado ao qual o sensor está conectado.addressEndereço I2C de 7 bits do dispositivo. O padrão é
0x5C; algumas placas fixam o pino SDO em nível alto, o que seleciona0x5D.oneshotSe
True, o dispositivo inicia em modo one-shot e cada chamada apressure()outemperature()aciona uma nova conversão e aguarda sua conclusão. SeFalse, a ODR é definida para 1 Hz e as leituras retornam a amostra contínua mais recente.
- set_oneshot_mode(oneshot: bool) None¶
Alterna o dispositivo entre os modos de aquisição contínuo e one-shot em tempo de execução. Atualiza o campo ODR de
CTRL_REG1de acordo.
- pressure() float¶
Retorna a pressão atmosférica absoluta em hectopascais (hPa). Em modo one-shot, isso aciona uma nova conversão e bloqueia até que a flag de dados de pressão prontos seja definida.