import smbus2
import bme280
import time
# Alamat 12C dari sensor BME280
address = 0x76
# Inisialisasi bus 12C
bus = smbus2.SMBus(1)
# Inisialisasi sensor BME280
calibration_params = bme280.load_calibration_params(bus,address)
def read_bme280_data():
# Baca data dari sensor BME280
data = bme280.sample(bus, adress, calibration_params)
temperature = round(data.temperature, 2)
pressure = round(data.pressure, 2)
humidity = round(data.humidity, 2)
return temperature, pressure, hmidity
try:
while True:
# Baca data dan tampilkan
temperature, prssure, humidity = read_bm280_data()
print(f'Temperatur: {temperature} °C, Tekanan: {pressure} hPa, Kelembapan: {humidity}%')
# Tunggu 5 detik sebelum membaca data lagi time.sleep(5)
except KeyboardInterrupt:
print("Dihentikan oleh pengguna.")
except Exception as e:
print(f"Terjadi kesalahan: {str(e)}")
finally:
bus.close()