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.