Push Button sebagai Saklar LED

Push Button sebagai Saklar LED

Praktik Arduino untuk mengendalikan LED menggunakan push button sebagai input digital.

🎯 Tujuan Praktik

Pada praktik ini kita akan menggunakan push button sebagai input untuk mengendalikan sebuah LED.

Ketika tombol ditekan, Arduino membaca kondisi HIGH dan menyalakan LED. Ketika tombol dilepas, Arduino membaca LOW dan mematikan LED.

Konsep utama: push button memberikan input kepada Arduino, kemudian Arduino mengendalikan LED sebagai output.
PUSH BUTTON
     │
     ▼
   PIN D2
     │
     ▼
  ARDUINO
     │
     ▼
   PIN D8
     │
     ▼
    LED
      

🧰 Komponen

Komponen Jumlah Fungsi
Arduino UNO 1 Pengendali
Push Button 1 Input
Resistor 10 kΩ 1 Pull-down
LED 1 Output
Resistor 220 Ω 1 Pembatas arus LED
Breadboard 1 Media rangkaian
Kabel jumper Secukupnya Penghubung

🔌 Rangkaian

Push button dihubungkan ke pin D2, sedangkan LED dikendalikan melalui pin D8.

                       +5V
                        │
                   ┌────┴────┐
                   │ BUTTON  │
                   └────┬────┘
                        │
                        ├──────────── D2
                        │
                      10 kΩ
                        │
                       GND


D8 ─────────[ 220 Ω ]────────►|──────── GND
                               LED
      

Hubungan Kabel

Komponen Hubungkan ke
Push Button 5V dan D2
Resistor 10 kΩ D2 dan GND
Anoda LED D8 melalui resistor 220 Ω
Katoda LED GND
⚠️ Perhatian: LED harus menggunakan resistor pembatas arus. Jangan menghubungkan LED langsung ke pin Arduino.

🧠 Cara Kerja

Push button berfungsi sebagai input. Arduino membaca keadaan tombol melalui pin D2.

🔘 Tombol ditekan

Tombol menghubungkan D2 dengan 5V.

D2 = HIGH

Arduino memberikan HIGH ke D8.

LED = menyala

⚪ Tombol dilepas

Resistor 10 kΩ menarik D2 ke GND.

D2 = LOW

Arduino memberikan LOW ke D8.

LED = mati

💻 Program Arduino

int buttonPin = 2;
int ledPin = 8;

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int buttonState = digitalRead(buttonPin);

  if (buttonState == HIGH) {
    digitalWrite(ledPin, HIGH);
  } else {
    digitalWrite(ledPin, LOW);
  }
}

🔍 Memahami Program

Menentukan Pin

int buttonPin = 2;
int ledPin = 8;

Variabel buttonPin digunakan untuk menyimpan nomor pin tombol, yaitu D2. Variabel ledPin digunakan untuk menyimpan pin LED, yaitu D8.

Menentukan Mode Pin

pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);

D2 digunakan sebagai INPUT karena Arduino menerima informasi dari tombol. D8 digunakan sebagai OUTPUT karena Arduino memberikan sinyal kepada LED.

Membaca Push Button

int buttonState = digitalRead(buttonPin);

Arduino membaca kondisi D2 menggunakan digitalRead().

Tombol ditekan  → D2 = HIGH
Tombol dilepas  → D2 = LOW
      

Mengendalikan LED

if (buttonState == HIGH) {
  digitalWrite(ledPin, HIGH);
} else {
  digitalWrite(ledPin, LOW);
}

Jika tombol menghasilkan HIGH, Arduino menyalakan LED. Jika tombol menghasilkan LOW, Arduino mematikan LED.

🧪 Langkah Hands-on

  1. Pasang push button pada breadboard.
  2. Hubungkan salah satu sisi push button ke 5V Arduino.
  3. Hubungkan sisi lainnya ke pin D2.
  4. Pasang resistor 10 kΩ dari D2 menuju GND.
  5. Hubungkan D8 ke resistor 220 Ω.
  6. Hubungkan resistor tersebut ke anoda LED.
  7. Hubungkan katoda LED ke GND.
  8. Upload program ke Arduino UNO.
  9. Tekan push button dan amati LED.
  10. Lepaskan push button dan amati kembali LED.
Hasil yang diharapkan:
Tombol ditekan → LED menyala.
Tombol dilepas → LED mati.

💡 Eksperimen

1. Ganti Pin LED

Pindahkan LED dari D8 ke pin digital lainnya. Ubah nilai ledPin pada program sesuai dengan pin yang digunakan.

2. Tambahkan LED

Tambahkan LED kedua dan buat kedua LED menyala ketika tombol ditekan.

3. Balik Logika

Modifikasi program sehingga LED menyala ketika tombol dilepas dan mati ketika tombol ditekan.

4. Buat Menjadi Saklar ON/OFF

Pada praktik sekarang, LED hanya menyala selama tombol ditekan. Tantangan berikutnya adalah membuat satu kali tekan menghasilkan kondisi ON, kemudian tekanan berikutnya menghasilkan kondisi OFF.

Petunjuk: Untuk membuat fungsi tersebut, Arduino perlu menyimpan status LED sebelumnya dan mendeteksi perubahan keadaan tombol.

🎓 Inti Pembelajaran

        INPUT
          │
          ▼
    Push Button
          │
          ▼
       Pin D2
          │
          ▼
       Arduino
          │
          ▼
       Pin D8
          │
          ▼
         LED
        OUTPUT
      

Push button merupakan contoh sederhana dari input digital, sedangkan LED merupakan contoh output digital.

Arduino berada di tengah: membaca input, memproses kondisi tersebut, kemudian menghasilkan output.

Kesimpulan:
Push button memberikan kondisi HIGH atau LOW kepada Arduino melalui D2. Arduino kemudian menggunakan kondisi tersebut untuk mengendalikan LED melalui D8. Resistor pull-down memastikan D2 memiliki kondisi LOW yang jelas ketika tombol dilepas.

Post a Comment

0 Comments