Percobaan 5 Kondisi 1
Buzzer & Push Button
- Rangkai semua komponen
- Buat program di website wokwi
- Jalankan program dan cobakan sesuai kondisi
Rangkaian ini bekerja
dengan prinsip mendeteksi tekanan tombol untuk mengaktifkan buzzer menggunakan
Raspberry Pi Pico sebagai pengendali utama. Pada saat pertama kali dijalankan,
Raspberry Pi Pico akan menginisialisasi push button yang terhubung ke GPIO0
sebagai input dengan pull-down resistor, yang memastikan bahwa saat tombol
tidak ditekan, nilai input tetap LOW (0). Sementara itu, buzzer yang terhubung
ke GPIO28 diatur sebagai output untuk mengontrol nyala dan matinya suara
buzzer. Program berjalan dalam loop tak terbatas, di mana Raspberry Pi Pico
terus-menerus membaca status tombol. Ketika tombol dalam kondisi tidak ditekan,
sistem tidak melakukan apa pun, dan buzzer tetap dalam kondisi mati. Namun,
ketika tombol ditekan, GPIO0 akan menerima sinyal HIGH (1), yang langsung
dikenali oleh Raspberry Pi Pico sebagai perintah untuk mengaktifkan buzzer.
Dalam kondisi ini, Raspberry Pi Pico mengubah output GPIO28 menjadi HIGH,
menyebabkan buzzer berbunyi, serta menampilkan pesan "Tombol ditekan!
Buzzer AKTIF." di terminal. Buzzer tetap menyala selama 3 detik, sesuai
dengan perintah dalam program, setelah itu Raspberry Pi Pico mengubah output
GPIO28 kembali ke LOW, mematikan buzzer secara otomatis. Pada saat yang sama,
terminal akan menampilkan pesan "Buzzer NONAKTIF." sebagai indikasi
bahwa buzzer telah dimatikan. Untuk memastikan stabilitas pembacaan tombol dan
menghindari kesalahan deteksi akibat noise atau getaran mekanis tombol, program
menambahkan delay selama 0.1 detik sebelum kembali memeriksa kondisi tombol.
Siklus ini terus berulang, sehingga setiap kali tombol ditekan, buzzer akan
menyala selama 3 detik sebelum kembali mati.
from machine import Pin
import time
# Inisialisasi push button sebagai input dengan pull-down resistor
button = Pin(0, Pin.IN, Pin.PULL_DOWN) # GPIO0 untuk tombol
# Inisialisasi buzzer sebagai output
buzzer = Pin(28, Pin.OUT) # GPIO28 untuk buzzer
while True:
if button.value() == 1: # Jika tombol ditekan
print("Tombol ditekan! Buzzer AKTIF.") # Tampilkan di terminal
buzzer.value(1) # Buzzer menyala
time.sleep(3) # Tunggu 3 detik
buzzer.value(0) # Matikan buzzer
print("Buzzer NONAKTIF.") # Tampilkan status di terminal
time.sleep(0.1) # Delay kecil untuk stabilitas
5. Video Demo [Kembali]
6. Kondisi [Kembali]
Buatlah Rangkaian seperti gambar pada percobaan 5 dengan kondisi ketika push button ditekan maka buzzer akan aktif selama 3 detik
HTML [Download]
Tidak ada komentar:
Posting Komentar