Laporan Akhir 2
2. Buat program untuk mikrokontroler Raspberry Pi Pico di software Thonny.
3. Inputkan program ke dalam mikrokontroler melalui USB.
4. Setelah program diinputkan, uji rangkaian yang telah dirangkai sesuai dengan output yang ditentukan.
Sistem ini menggunakan microcontroller, seperti Raspberry Pi Pico, untuk mengendalikan sebuah buzzer berdasarkan input dari dua tombol. tombol berfungsi sebagai input dengan mode pull-up, di mana dalam keadaan normal bernilai 1 dan berubah menjadi 0 saat ditekan. Ketika tombol ditekan, program akan mendeteksi perubahan nilai tersebut dan memicu buzzer untuk berbunyi selama 100 milidetik sebagai bentuk umpan balik kepada pengguna.
Agar pembacaan tombol lebih akurat, sistem menerapkan teknik debounce dengan menambahkan jeda 50 milidetik sebelum membaca kembali status tombol. Setelah tombol ditekan dan dilepaskan, sistem menyimpan status terakhir tombol untuk dibandingkan dengan kondisi berikutnya. Dengan metode ini, sistem mampu beroperasi secara stabil dalam mengontrol Buzzer berdasarkan input dari tombol tersebut.
from machine import Pin
import utime
# Konfigurasi pin
BUZZER = Pin(12, Pin.OUT)
Button1 = Pin(10, Pin.IN, Pin.PULL_UP)
Button2 = Pin(7, Pin.IN, Pin.PULL_UP)
# State terakhir tombol (untuk deteksi tepi)
lastButton1State = True
lastButton2State = True
def buzz(duration_ms):
"""Nyalakan buzzer selama duration_ms milidetik."""
BUZZER.value(1)
utime.sleep_ms(duration_ms)
BUZZER.value(0)
while True:
# Baca status tombol (active-low)
button1State = Button1.value()
button2State = Button2.value()
# Deteksi penekanan tombol 1 (tepi turun)
if button1State == 0 and lastButton1State == 1:
print("Tombol 1 Ditekan")
buzz(100)
lastButton1State = button1State
# Deteksi penekanan tombol 2 (tepi turun)
if button2State == 0 and lastButton2State == 1:
print("Tombol 2 Ditekan")
buzz(100)
lastButton2State = button2State
# Debounce sederhana
utime.sleep_ms(1)



.jpg)





Komentar
Posting Komentar