Percobaan I
Push Button dan LED
1. Foto Hardware dan Diagram Blok [Kembali]
Diagram Blok:
2. Prosedur Percobaan [Kembali]
+ Rangkai semua komponen
+ buat program di aplikasi arduino IDE
+ setelah selesai masukkan program ke arduino
+ jalankan program pada simulasi dan cobakan dengan modul
Prinsip Kerja
Pada rangkaian ini menggunakan komponen antara lain yaitu mikrokontroler (ATMEGA328P-PU), push button, resistor, dan LED.
Mikrokontroler ATMEGA328P-PU adalah inti rangkaian, yang mengelola pengoperasian push button dan LED. Push button terhubung ke mikrokontroler melalui pin input analog pada arduino yaitu pin A0 - A5, sedangkan LED terhubung ke pin output arduino yaitu pin 2-6.
Ketika 1 push botton ditekan, pin input yang sesuai mendeteksi perubahan tegangan dan mengirimkan sinyal ke mikrokontroler. Mikrokontroler kemudian mengaktifkan pin output (PD4 dan PD3) untuk menyalakan LED (D1 dan D2).
Demikian pula, ketika 2 push button ditekan, mikrokontroler menerima sinyal dari pin input (A0 dan A1) dan mengaktifkan program yang mengalihkan suplai tegangan ke LED (D1, D2, D3, D4, D5) pada frekuensi tertentu, sehingga menyebabkan LED berkedip.
Pada rangkaian ini, Resistor (R1-R5) digunakan untuk membatasi aliran arus ke LED, sedangkan resistor (R6 dan R7) digunakan untuk konfigurasi pull-down untuk memastikan pin input berfungsi dengan baik.
4. Flowchart dan Listing Program [Kembali]
Listing Program:
// Deklarasi pin untuk button
const int button1 = A0;
const int button2 = A1;
const int button3 = A2;
const int button4 = A3;
const int button5 = A4;
const int button6 = A5;
// Deklarasi pin untuk LED
const int led1 = 2;
const int led2 = 3;
const int led3 = 4;
const int led4 = 5;
const int led5 = 6;
const int led6 = 7; // Perhatikan bahwa hanya 6 LED yang diminta, jadi kita menggunakan pin 2 sampai 7
void setup() {
// Inisialisasi pin button sebagai input
pinMode(button1, INPUT);
pinMode(button2, INPUT);
pinMode(button3, INPUT);
pinMode(button4, INPUT);
pinMode(button5, INPUT);
pinMode(button6, INPUT);
// Inisialisasi pin LED sebagai output
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
}
void loop() {
// Membaca status dari tiap-tiap button
int button1State = digitalRead(button1);
int button2State = digitalRead(button2);
int button3State = digitalRead(button3);
int button4State = digitalRead(button4);
int button5State = digitalRead(button5);
int button6State = digitalRead(button6);
// Menghitung jumlah button yang ditekan
int pressedCount = button1State + button2State + button3State + button4State + button5State + button6State;
// Jika satu button ditekan, nyalakan 2 LED
if (pressedCount == 1) {
digitalWrite(led1, HIGH); // Menyalakan LED 1
digitalWrite(led2, HIGH); // Menyalakan LED 2
// Matikan LED lainnya
for (int i = 4; i <= 7; i++) {
digitalWrite(i, LOW);
}
} else if (pressedCount == 2) {
for (int i = 2; i <= 6; i++) {
digitalWrite(i, HIGH);
}
delay(500); // Tahan LED hidup selama 0.5 detik
for (int i = 2; i <= 6; i++) {
digitalWrite(i, LOW);
}
delay(500); // Tahan LED mati selama 0.5 detik
}
}
Pada kondisi 3 dari percobaan 1, satu tombol akan menyalakan dua LED, sementara dua tombol akan menghidupkan lima LED dan membuatnya berkedip.
᭒ HTML↠ klik disini
᭒ Aplikasi↠ klik disini
᭒ Video Percobaan↠ klik disini
Download Datasheet SW-SPDT
Download Datasheet Resistor
Download Datasheet Arduino Uno
Download Datasheet LED
Komentar
Posting Komentar