lps22h — LPS22HB/HH drukoppervlaktesensor¶
Driver voor de ST LPS22HB / LPS22HH MEMS nano druksensor via I2C. Het apparaat stelt zowel barometrische druk als een uitlezing van de chiptemperatuur beschikbaar, en kan ofwel continu draaien ofwel in single-shot-modus (“one-shot”), waarbij elke meting expliciet door de host wordt geactiveerd.
Voorbeeld:
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)
Klassen¶
- class lps22h.LPS22H(bus: machine.I2C, address: int = 0x5C, oneshot: bool = False)¶
Construeer een
LPS22H-instantie en configureer het apparaat met BDU ingeschakeld en het laagdoorlaatfilter actief.busEen geconfigureerde
machine.I2C-bus waaraan de sensor is gekoppeld.address7-bits I2C-adres van het apparaat. Standaard
0x5C; sommige boards trekken de SDO-pin hoog, wat0x5Dselecteert.oneshotAls
True, start het apparaat in one-shot-modus en activeert elke aanroep vanpressure()oftemperature()een nieuwe conversie en wacht tot deze klaar is. AlsFalse, wordt de ODR ingesteld op 1 Hz en geven uitlezingen het meest recente continue sample terug.
- set_oneshot_mode(oneshot: bool) None¶
Schakel het apparaat tijdens runtime tussen de continue en one-shot acquisitiemodi. Werkt het ODR-veld van
CTRL_REG1dienovereenkomstig bij.
- pressure() float¶
Geeft de absolute atmosferische druk in hectopascal (hPa) terug. In one-shot-modus activeert dit een nieuwe conversie en blokkeert tot de data-ready-vlag voor de druk is gezet.