Simulasi
ini merupakan rangkaian kontrol kerja komponen push button (tombol),
dioda led (lampu) dan buzzer (bell) sejumlah 3x atau sesuai kebutuhan.
Skenario kerja rangkaian seperti halnya lomba adu cepat dalam cerdas
cermat, jika tombol ditekan maka lampu akan menyala dan bell berbunyi.
Dan jika dua tombol atau lebih ditekan, maka hanya bell dan lampu milik
tombol yang ditekan lebih dulu yang akan menyala. Karena tombol yang
ditekan lebih dulu akan mengunci tombol yang lain sehingga tidak dapat
menyalakan bell dan lampu miliknya.
Komponen yang diperlukan :
Koneksi komponen : Penulisan program //Simulasi Lomba Cerdas Cermat Adu Cepat const int button1 = 10; //deklarasi pin 10 sebagai button1 const int button2 = 11; //deklarasi pin 11 sebagai button2 const int button3 = 12; const int buzzerLed1 = 2; //deklarasi pin 2 sebagai buzzerLed1 const int buzzerLed2 = 4; const int buzzerLed3 = 6; int buttonState1 = 0; //deklarasi variabel buttonState1 int buttonState2 = 0; int buttonState3 = 0; int saklar1 = 0; //deklarasi variabel saklar1 int saklar2 = 0; int saklar3 = 0; int tunda = 10; //variabel tunda diberi nilai 10 mili second void setup () { pinMode (button1, INPUT); //pin button1 sebagai input pinMode (button2, INPUT); pinMode (button3, INPUT); pinMode (buzzerLed1, OUTPUT); //buzzerLed1 sebagai output pinMode (buzzerLed2, OUTPUT); pinMode (buzzerLed3, OUTPUT); } void loop () { buttonState1 = digitalRead (button1); //membaca sinyal digital (digitalRead) dari buttonState2 = digitalRead (button2); //pin button1,2,3 buttonState3 = digitalRead (button3); //Pernyataan perulangan kontrol struktur if if (buttonState1 == HIGH && saklar2 == 0 && saklar3 == 0) //persyaratan if { saklar1++; //variabel saklar1 ditambahkan 1 } else { if (buttonState2 == HIGH && saklar1 == 0 && saklar3 == 0) //persyaratan if ke 2 { saklar2++; //variabel saklar2 ditambahkan 1 } else { if (buttonState3 == HIGH && saklar1 == 0 && saklar2 == 0) { saklar3++; } else { if (buttonState1 == LOW && buttonState2 == LOW && buttonState3 == LOW) { //persyaratan if jika semua tombol low saklar1 = 0; saklar2 = 0; saklar3 = 0; //variabel saklar1,2,3 = 0 } } } } if (saklar1 != 0) //persyaratan if tidak sama dengan 0 { digitalWrite (buzzerLed1, HIGH); //pin buzzerLed1 = high digitalWrite (buzzerLed2, LOW); //pin buzzerLed2 = low digitalWrite (buzzerLed3, LOW); } else { if (saklar2 != 0) { digitalWrite (buzzerLed1, LOW); digitalWrite (buzzerLed2, HIGH); digitalWrite (buzzerLed3, LOW); } else { if (saklar3 != 0) { digitalWrite (buzzerLed1, LOW); digitalWrite (buzzerLed2, LOW); digitalWrite (buzzerLed3, HIGH); } else { if (saklar1 == 0 && saklar2 == 0 && saklar3 == 0) { digitalWrite (buzzerLed1, LOW); digitalWrite (buzzerLed2, LOW); digitalWrite (buzzerLed3, LOW); } } } } delay (tunda); } |
Selasa, 11 Juni 2013
Simulasi Papan Tombol Cerdas Cermat
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar
Gunakan bahasa yang sopan