lps22h --- sensor tekanan LPS22HB/HH

Driver untuk sensor tekanan nano MEMS ST LPS22HB / LPS22HH melalui I2C. Perangkat ini mengekspos pembacaan tekanan barometrik dan suhu die, serta dapat berjalan secara berkelanjutan atau dalam mode single-shot ("one-shot") di mana setiap pengukuran dipicu secara eksplisit oleh host.

Contoh:

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)

Kelas

class lps22h.LPS22H(bus: machine.I2C, address: int = 0x5C, oneshot: bool = False)

Buat instans LPS22H dan konfigurasikan perangkat dengan BDU diaktifkan dan filter low-pass aktif.

bus

Bus machine.I2C yang telah dikonfigurasi tempat sensor terpasang.

address

Alamat I2C 7-bit perangkat. Default ke 0x5C; beberapa board menyambungkan pin SDO ke tinggi yang memilih 0x5D.

oneshot

Jika True, perangkat memulai dalam mode one-shot dan setiap panggilan ke pressure() atau temperature() memicu konversi baru dan menunggu hingga selesai. Jika False, ODR diatur ke 1 Hz dan pembacaan mengembalikan sampel berkelanjutan terbaru.

set_oneshot_mode(oneshot: bool) None

Beralih perangkat antara mode akuisisi berkelanjutan dan one-shot saat runtime. Memperbarui kolom ODR dari CTRL_REG1 sesuai.

pressure() float

Kembalikan tekanan atmosfer absolut dalam hectopascal (hPa). Dalam mode one-shot ini memicu konversi baru dan memblokir hingga flag data-ready tekanan diset.

temperature() float

Kembalikan suhu die dalam derajat Celsius. Dalam mode one-shot ini memicu konversi baru dan memblokir hingga flag data-ready suhu diset.

altitude() float

Kembalikan estimasi ketinggian dalam meter yang diturunkan dari pembacaan tekanan dan suhu saat ini menggunakan rumus barometrik internasional yang merujuk pada tekanan permukaan laut 1013.25 hPa.