lps22h — LPS22HB/HH-Drucksensor

Treiber für den ST LPS22HB / LPS22HH MEMS-Nano-Drucksensor über I2C. Das Gerät stellt sowohl den barometrischen Druck als auch eine Die-Temperaturmessung bereit und kann entweder kontinuierlich oder im Single-Shot-Modus („One-Shot“) laufen, bei dem jede Messung explizit vom Host ausgelöst wird.

Beispiel:

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)

Erstellt eine LPS22H-Instanz und konfiguriert das Gerät mit aktiviertem BDU und aktivem Tiefpassfilter.

bus

Ein konfigurierter machine.I2C-Bus, an den der Sensor angeschlossen ist.

address

7-Bit-I2C-Adresse des Geräts. Standardmäßig 0x5C; einige Boards ziehen den SDO-Pin auf High, was 0x5D auswählt.

oneshot

Wenn True, startet das Gerät im One-Shot-Modus, und jeder Aufruf von pressure() oder temperature() löst eine neue Wandlung aus und wartet, bis sie abgeschlossen ist. Wenn False, wird die ODR auf 1 Hz gesetzt, und die Messwerte geben die jüngste kontinuierliche Probe zurück.

set_oneshot_mode(oneshot: bool) None

Schaltet das Gerät zur Laufzeit zwischen kontinuierlichem und One-Shot-Erfassungsmodus um. Aktualisiert das ODR-Feld von CTRL_REG1 entsprechend.

pressure() float

Gibt den absoluten atmosphärischen Druck in Hektopascal (hPa) zurück. Im One-Shot-Modus löst dies eine neue Wandlung aus und blockiert, bis das Druck-Data-Ready-Flag gesetzt ist.

temperature() float

Gibt die Die-Temperatur in Grad Celsius zurück. Im One-Shot-Modus löst dies eine neue Wandlung aus und blockiert, bis das Temperatur-Data-Ready-Flag gesetzt ist.

altitude() float

Gibt eine geschätzte Höhe in Metern zurück, die aus den aktuellen Druck- und Temperaturmesswerten mithilfe der internationalen barometrischen Höhenformel bezogen auf einen Meereshöhendruck von 1013,25 hPa abgeleitet wird.