lps22h — capteur de pression LPS22HB/HH¶
Pilote pour le capteur de pression nano MEMS ST LPS22HB / LPS22HH via I2C. Le composant expose à la fois la pression barométrique et une mesure de température de la puce, et peut fonctionner soit en continu, soit en mode à un coup (« one-shot »), où chaque mesure est déclenchée explicitement par l’hôte.
Exemple
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)¶
Construit une instance
LPS22Het configure le composant avec le BDU activé et le filtre passe-bas actif.busUn bus
machine.I2Cconfiguré auquel le capteur est connecté.addressAdresse I2C 7 bits du composant. Vaut par défaut
0x5C; certaines cartes tirent la broche SDO au niveau haut, ce qui sélectionne0x5D.oneshotSi
True, le composant démarre en mode à un coup et chaque appel àpressure()outemperature()déclenche une nouvelle conversion et attend qu’elle se termine. SiFalse, l’ODR est réglé sur 1 Hz et les lectures renvoient l’échantillon continu le plus récent.
- set_oneshot_mode(oneshot: bool) None¶
Bascule le composant entre les modes d’acquisition continu et à un coup à l’exécution. Met à jour le champ ODR de
CTRL_REG1en conséquence.
- pressure() float¶
Renvoie la pression atmosphérique absolue en hectopascals (hPa). En mode à un coup, cela déclenche une nouvelle conversion et bloque jusqu’à ce que l’indicateur de disponibilité des données de pression soit positionné.