lps22h — LPS22HB/HH senzor tlaka¶
Upravljački program za ST LPS22HB / LPS22HH MEMS nano senzor tlaka putem I2C. Uređaj izlaže i barometarski tlak i očitanje temperature čipa, a može raditi kontinuirano ili u jednokratnom („one-shot”) načinu rada gdje host eksplicitno pokreće svako mjerenje.
Primjer:
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)
Klase¶
- class lps22h.LPS22H(bus: machine.I2C, address: int = 0x5C, oneshot: bool = False)¶
Konstruira
LPS22Hinstancu i konfigurira uređaj s omogućenim BDU i aktivnim niskopropusnim filtrom.busKonfigurirana
machine.I2Csabirnica na koju je senzor priključen.address7-bitna I2C adresa uređaja. Zadano
0x5C; neke ploče vežu SDO pin na visoku razinu, čime se odabire0x5D.oneshotAko je
True, uređaj kreće u jednokratnom načinu rada i svaki poziv napressure()ilitemperature()pokreće novu konverziju i čeka da završi. Ako jeFalse, ODR se postavlja na 1 Hz, a očitanja vraćaju najnoviji kontinuirani uzorak.
- set_oneshot_mode(oneshot: bool) None¶
Tijekom rada prebacuje uređaj između kontinuiranog i jednokratnog načina prikupljanja. U skladu s time ažurira polje ODR u
CTRL_REG1.
- pressure() float¶
Vraća apsolutni atmosferski tlak u hektopaskalima (hPa). U jednokratnom načinu rada to pokreće novu konverziju i blokira dok se ne postavi zastavica spremnosti podataka o tlaku.