M1 LA2





Percobaan 8
Buzzer & Push Button


1. Prosedur [kembali]
    Langkah-langkah percobaan :

        1. Siapkan alat dan bahan yaitu dengan komponen utama Rapsberry Pi Pico, Push Button, dan Buzzer

        2. Rangkai sesuai gambar percobaan

        3. Rancang kerja rangkaian sesuai flowchat

        4. Tekan tombol “Play” untuk menjalankan simulasi



2. Hardware dan Diagram Blok [kembali]
        A. Hardware
            1. Rapsberyy Pi Pico




            2. Push Button








            3. Buzzer
       









          B. Blok Diagram

3. Rangkaian Simulasi dan Prinsip Kerja [kembali]
           A. Rangkaian Simulasi




Rangkaian terdiri dari dua buah push button yang berfungsi sebagai input dan satu buzzer sebagai output yang dikendalikan oleh Raspberry Pi Pico. Kedua push button dihubungkan ke pin input digital pada Raspberry Pi Pico dengan konfigurasi pull-down, sehingga dalam kondisi default (tidak ditekan), input akan bernilai rendah (LOW). Ketika kedua tombol ditekan secara bersamaan, Raspberry Pi Pico akan mendeteksi kondisi HIGH pada kedua input. Mikrocontroller kemudian mengaktifkan buzzer selama 1 detik dengan memberikan sinyal HIGH ke pin output yang terhubung ke buzzer. Setelah 1 detik, buzzer akan dimatikan dengan mengatur kembali pin output ke kondisi LOW. Jika salah satu atau kedua tombol tidak ditekan, buzzer tetap dalam kondisi mati.




4. Flowchart dan Listing Program [kembali]
        A. Flowchart



        B. Listing Program  
from machine import Pin
import utime

# Konfigurasi pin
BUZZER = Pin(13, Pin.OUT)
Button1 = Pin(7, Pin.IN, Pin.PULL_UP)
Button2 = Pin(9, Pin.IN, Pin.PULL_UP)

def buzz(duration):
    BUZZER.value(1)  # Nyalakan buzzer
    utime.sleep_ms(duration)
    BUZZER.value(0)  # Matikan buzzer

while True:
    Button1State = Button1.value()
    Button2State = Button2.value()
   
    # Jika kedua tombol ditekan secara bersamaan
    if Button1State == 0 and Button2State == 0:
        print("kedua tombol ditekan, buzzer aktif 1 detik")
        buzz(1000)
   
    utime.sleep_ms(1)  # Debounce sederhana


           

    

5. Analisa [kembali]

1. Analisa bagaimana pengaruh penggunaan/pemilihan GPIO pada STM32 dan Raspberry Pi Pico

    Jawab : Pemilihan gpio pada raspberry memiliki pilihan yang lebih sedikit dibandingkan STM 32 di mana pada raspberry pipico hanya memiliki 26 PIN io maka dari itu untuk raspberry pipiku memiliki bentuk yang lebih sederhana dimana disini konfigurasinya dapat dilakukan langsung dengan program dalam bahasa micro python

2. Analisa bagaimana STM32 dan Raspberry Pi Pico menerima inputan dan menghasilkan output

    Jawab :Raspberry pi pico menerima input melalui konfigurasi sebagai input mode inputan Dapat dibaca menggunakan machine.pin.value() pin yang nantinya mengkonfigurasi PIN sebagai input. Output pada raspberry  pi pico cara yang digunakan sama pada inputnya di mana melakukan konfigurasi sebagai output mode dalam micro Python dapat menggunakan machine.pin.value(1) atau (0)

3. Analisa bagaimana program deklarasi pin I/O pada STM32 dan Raspberry Pi Pico

    Jawab : Pada rasberry pipiko program  dideklarasikan menggunakan bahasa mikropython yang langsung dikonfigurasi menggunakan machine.pin() tanpa perlu mengaktifkan clock yang mana pin yang telah dikonfigurasi dapat dijadikan input, output maupun PWM

4. Analisa bagaimana program dalam analisa metode pendeteksian input pada STM32 dan Raspberry Pi Pico

    Jawab : Metode yang digunakan dalam program pendeteksi input pada rasberry pipico adalah polling poling dilakukan dalam loop while true dimana sistem membaca secara terus-menerus status tombol tanpa henti inisialisasi gpio dengan button 1 dan 2 sebagai input dan buzzer sebagai output selanjutnya sistem membaca satu tombol dengan button1.value() dan button.2.value() lalu adanya di debounce model untuk mendeteksi perubahan status tombol (high dan low) dan memberikan delay program dengan utime.sleep_ms(1)

5. Analisa Fungsi HAL_Delay(100) pada STM32 dan utime.sleep_ms(1) pada Raspberry Pi Pico

    Jawab : utime.sleep_ms(1) memiliki fungsi untuk melakukan penundaan eksekusi selama 1ms yang mana berasal dari model utime yang mana cpu juga tidak bisa menjalankan tugas lain selama nilai berlangsung




6. Video Simulasi [kembali]



7. Download file [kembali]

Rangkaian Simulasi Klik Disini

DataSheet Raspberry Pi Pico Klik Disini 

DataSheet Sensor PIR Klik Disini 

DataSheet LED Klik disini

DataSheet Resistor Klik disini

Library Sensor PIR Klik Disini