from machine import Pin, I2C
from ssd1306 import SSD1306_I2C
import utime
from hcsr04 import HCSR04 # Diperlukan modul hcsr04
# Inisialisasi pin untuk sensor jarak HC-SR04
trigger_pin = 8 # Sesuaikan dengan pin yang digunakan
echo_pin = 9 # Sesuaikan dengan pin yang digunakan
# Inisialisasi pin untuk I2C pada SSD1306
scl_pin = 27 # Sesuaikan dengan pin yang digunakan
sda_pin = 26 # Sesuaikan dengan pin yang digunakan
# Inisialisasi OLED display
pix_res_x = 128
pix_res_y = 64
i2c_dev = I2C(1, scl=Pin(scl_pin), sda=Pin(sda_pin), freq=200000)
oled = SSD1306_I2C(pix_res_x, pix_res_y, i2c_dev)
# Inisialisasi sensor jarak HC-SR04
sensor = HCSR04(trigger_pin, echo_pin)
def display_distance(distance):
oled.fill(0)
oled.text("Distance:", 5, 5)
oled.text("{:.2f} cm".format(distance), 5, 15)
oled.show()
def main():
try:
while True:
# Baca jarak dari sensor HC-SR04
distance = sensor.distance_cm()
# Tampilkan jarak di OLED display
display_distance(distance)
# Tunggu sejenak sebelum membaca kembali
utime.sleep(1)
except KeyboardInterrupt:
# Tangkap exception jika pengguna menekan Ctrl+C
pass
if __name__ == '__main__':
main()