TP M1 P1 K7

 Percobaan 1 Kondisi 7






1. Kondisi
[Kembali]
    Buatlah rangkaian seperti gambar pada percobaan 1 dengan input 6 input Push button dan 3 output led merah, dengan 2 input masing-masing menghidupkan 1 output


2. Gambar Rangkaian Simulasi, Listing Program dan Flowchart [Kembali]

A. Gambar Rangakaian


B. Listing Program
from machine import Pin
import time

# Daftar GPIO untuk LED dan push button
led_pins = [2, 3, 4]  # Output LED
button_pins = [9, 10, 11, 12, 13, 14]  # Input dari push button

# Inisialisasi LED sebagai output
leds = [Pin(pin, Pin.OUT) for pin in led_pins]

# Inisialisasi push button sebagai input dengan pull-down
buttons = [Pin(pin, Pin.IN, Pin.PULL_DOWN) for pin in button_pins]

# Print pin numbers for LEDs and buttons (we print the pin numbers, not the Pin objects)
print("LED Pins: ", led_pins)
print("Button Pins: ", button_pins)

# Continuously check button states
while True:
    if buttons[1].value() == 1 or buttons[0].value() == 1:  # Check if button 0 is pressed (pull-up)
        leds[0].value(1)  # Turn on LED 0
    elif buttons[2].value() == 1 or buttons[3].value() == 1:  # Check if button 0 is pressed (pull-up)
        leds[1].value(1)  # Turn on LED 0
    elif buttons[4].value() == 1 or buttons[5].value() == 1:  # Check if button 0 is pressed (pull-up)
        leds[2].value(1)  # Turn on LED 0
    else:
        for i in range(0, 3):
            leds[i].value(0)  # Turn off LED 0
   
    time.sleep(0.1)  # Delay to prevent excessive checking (debounce)

C. Flowchart

3. Video Simulasi [Kembali]





4. Prinsip Kerja [Kembali]
    
    Prinsip kerja alat yang dijelaskan dalam kode ini adalah untuk mengendalikan tiga buah LED berdasarkan status enam tombol yang terhubung pada pin GPIO yang berbeda. Program dimulai dengan menginisialisasi LED dan tombol sebagai perangkat input dan output pada mikrokontroler. LED diatur untuk menyala atau mati tergantung pada tombol yang ditekan. Jika salah satu dari tombol 1 atau tombol 2 ditekan, LED pertama akan menyala. Jika tombol 3 atau tombol 4 ditekan, LED kedua akan menyala, dan jika tombol 5 atau tombol 6 ditekan, LED ketiga akan menyala. Jika tidak ada tombol yang ditekan, ketiga LED akan dimatikan. Program berjalan dalam sebuah loop yang terus-menerus memeriksa status tombol dan memperbarui keadaan LED sesuai dengan tombol yang ditekan. Untuk mencegah pembacaan tombol yang berlebihan akibat "noise" atau debouncing, program memberikan delay selama 0.1 detik setiap kali memeriksa tombol. Dengan cara ini, alat ini memastikan bahwa LED yang menyala selalu sesuai dengan tombol yang ditekan dan menghindari pembacaan ganda yang tidak diinginkan.


5. Link Download [Kembali]
    
[Menuju Awal]

Comments

Popular posts from this blog