P1L3
P1L3
Skema Rangkaian:
Buatlah rangkaian dan perintah program untuk membaca input 3 (tiga) tombol aktif low, untuk
menyalakan dan memadamkan 3 (tiga) LED aktif high berdasarkan pembacaan kondisi
penekanan tombol. Kondisi nyala atau padam pada led akan tetap terkunci sampai ada
perubahan kondisi berdasarkan adanya penekanan tombol
Perintah Program:
#define led1 2
#define led2 3
#define led3 4
#define tombol1 A0
#define tombol2 A1
#define tombol3 A2
#define ON HIGH
#define OFF LOW
byte kondisi1 = 0, kondisi2 = 0, kondisi3 = 0;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(tombol1, INPUT_PULLUP);
pinMode(tombol2, INPUT_PULLUP);
pinMode(tombol3, INPUT_PULLUP);
}
void loop() {
int cek_tombol1 = digitalRead(tombol1);
int cek_tombol2 = digitalRead(tombol2);
int cek_tombol3 = digitalRead(tombol3);
if (cek_tombol1 == LOW) {
if (kondisi1 == 0) {
kondisi1 = 1;
digitalWrite(led1, ON);
delay(2000);
} else {
kondisi1 = 0;
digitalWrite(led1, OFF);
delay(2000);
}
cek_bouncing_tombol(tombol1);
}
if (cek_tombol2 == LOW) {
if (kondisi2 == 0) {
kondisi2 = 1;
digitalWrite(led2, ON);
delay(2000);
} else {
kondisi2 = 0;
digitalWrite(led2, OFF);
delay(2000);
}
cek_bouncing_tombol(tombol2);
}
if (cek_tombol3 == LOW) {
if (kondisi3 == 0) {
kondisi3 = 1;
digitalWrite(led3, ON);
delay(2000);
} else {
kondisi3 = 0;
digitalWrite(led3, OFF);
delay(2000);
}
cek_bouncing_tombol(tombol3);
}
}
No Nilai delay Lama Apakah nyala led kedip kedip (Ya atau
tunda Tidak)
1 2000 2 detik YA
2 1000 1 detik YA