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.
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 |
🧠 Cara Kerja
Push button berfungsi sebagai input. Arduino membaca keadaan tombol melalui pin D2.
Tombol menghubungkan D2 dengan 5V.
D2 = HIGH
Arduino memberikan HIGH ke D8.
LED = menyala
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
- Pasang push button pada breadboard.
- Hubungkan salah satu sisi push button ke 5V Arduino.
- Hubungkan sisi lainnya ke pin D2.
- Pasang resistor 10 kΩ dari D2 menuju GND.
- Hubungkan D8 ke resistor 220 Ω.
- Hubungkan resistor tersebut ke anoda LED.
- Hubungkan katoda LED ke GND.
- Upload program ke Arduino UNO.
- Tekan push button dan amati LED.
- Lepaskan push button dan amati kembali LED.
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.
🎓 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.
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.
0 Comments