Hari ini kita akan mencoba membuat Program untuk Push Button, komponen elektronika jenis Saklar yang pernah terbahas di Komponen Dasar Elektronika. Dimana kita mengetahui bahwa Push Button ketika kita tekan akan menghubungkan arus listrik, dan terputus apabila dilepas (tidak ditekan).
Saat ini kita akan membuat program sederhana untuk Push Button dengan logika program, “Jika button ditekan LED menyala, jika tidak LED mati.”
Yang harus kamu siapkan;
1x Arduino
1x Breadboard
1x Push button
1x LED
1x Resitor 10k
1x Resistor 220ohm
7x Kabel jumper
Buatlah rangkain seperti gambar dibawah ini...
NOTES:
Untuk sketch-nya kamu bisa ambil sampel pada FILE=>EXAMPLES=>DIGITAL=>BUTTON. Atau salin ulang program dibawah ini;
NOTES:
MARI LEBIH KREATIF!!!
Dengan rangkaian yang sama, kamu bisa membuat sketch program seperti;
Pemograman Dasar Arduino, Komponen Dasar Elektronika, Program Arduino: BLINK!, dan Program Arduino: Blink 3 LED. Karena kelas yang ini, merupakan kelas lanjutan dari sebelumnya :)
Atau jika masih kurang jelas juga, langsung aja isi di Kotak Komentar ya. Jangan malu-malu ;)
Saat ini kita akan membuat program sederhana untuk Push Button dengan logika program, “Jika button ditekan LED menyala, jika tidak LED mati.”
Yang harus kamu siapkan;
1x Arduino
1x Breadboard
1x Push button
1x LED
1x Resitor 10k
1x Resistor 220ohm
7x Kabel jumper
Buatlah rangkain seperti gambar dibawah ini...
Rangkaian Untuk Push Button |
NOTES:
- Hubungkan 5V dan GND dari Arduino ke Breadboard.
- Hubungkan kaki pertama button ke 5V dan kaki ke-2 ke kaki pertama resitor 10k.
- Hubungkan kaki ke-2 resistor 10k ke GND.
- Hubungkan pin 2 Arduino ke kaki ke-2 button.
- Untuk LED rangkaiannya tidak jauh berbeda dengan pembahasan sebelumnya.
Untuk sketch-nya kamu bisa ambil sampel pada FILE=>EXAMPLES=>DIGITAL=>BUTTON. Atau salin ulang program dibawah ini;
int buttonPin = 2; // membuat variabel buttonPin untuk pin 2
int ledPin = 13; // membuat variabel ledPin untuk pin 13
int buttonState = 0; // variabel untuk posisi awal button agar dibaca LOW
void setup() {
pinMode(ledPin, OUTPUT); // membuat ledPin menjadi OUTPUT
pinMode(buttonPin, INPUT); // membuat buttonPin menjadi INPUT
}
void loop() {
buttonState = digitalRead(buttonPin); // membuat variabel buttonState untuk mengambil
nilai dari buttonPin
if (buttonState == HIGH) { // Jika nilai buttonPin = HIGH
digitalWrite(ledPin, HIGH); // maka ledPin akan menyala
}
else { // Jika tidak
digitalWrite(ledPin, LOW); // maka ledPin akan mati
}
}
NOTES:
- Variabel int buttonState=0; digunakan untuk menentukan nilai awal yang terbaca adalah 0 atau LOW.
- Variabel baru buttonState = digitalRead(buttonPin); digunakan untuk menyimpan nilai baca dari buttonPin kedalam variabel buttonState.
- digitalRead sendiri berfungsi untuk membaca nilai sensor secara digital (LOW=GND, HIGH=5V).
- if (buttonState == HIGH) digunakan untuk menampilkan jika nilai dari buttonState adalah HIGH, maka lampu LED akan menyala digitalWrite(ledPin, HIGH);
- else jika tidak maka lampu LED akan mati digitalWrite(ledPin, LOW);
MARI LEBIH KREATIF!!!
Dengan rangkaian yang sama, kamu bisa membuat sketch program seperti;
- Jika button ditekan lampu LED mati, jika tidak menyala.
- Jika button ditekan lampu LED berkedip, jika tidak hanya menyala.
- Jika button ditekan lampu LED berkedip cepat, jika tidak berkedip lambat.
Pemograman Dasar Arduino, Komponen Dasar Elektronika, Program Arduino: BLINK!, dan Program Arduino: Blink 3 LED. Karena kelas yang ini, merupakan kelas lanjutan dari sebelumnya :)
Atau jika masih kurang jelas juga, langsung aja isi di Kotak Komentar ya. Jangan malu-malu ;)
Makasih banget gan tutornya
BalasHapusOk gan sama2, , ,
HapusUntuk menulis program int didalam void setup/void loop ? Terimakasih
BalasHapusBisa bro... Program variabel int, long,char, dll bisa di tulis didlam void setup, atau void loop... tapi disarankan diluar aja...
HapusOm, jika tombol di tekan maka led akan hidup, dan jika di lepas led akan mati, Tapi jika tombol di tekan lama berarti g bisa mati ya om, trus kalo pengen bisa mati sendiri tidak tanpa melepas tombol gimana om bahasa programnya?
BalasHapusSaat di tekan led menyala, dan akan mati sendiri tanpa melepas tombolnya. Tambahkan saja pada ini..
Hapusif (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
delay(5000);
digitalWrite(ledPin, LOW);
}
program diatas led akan mati setelah 5 detik, tanpa harus dilepas tombolnya...
Push button knp pake resistor 10k ohm
BalasHapusSupaya gak ada Bounce, gak pake 10 k juga masih bisa pake 1k, intinya harus pake resistor biar aman juga...
Hapusom kalo push button 1 stelah ditekan led 1 menyala terus menerus mekipun push button 1 di lepas gmana??
BalasHapusHapus program elsenya...
HapusKalo saya amati R10k itu melakukan shorting beberapa persen ketika button ditekan, apa itu benar. dan apa tujuannya ? Bukankah tanpa itu Arduino akan tetap berjalan normal
BalasHapusGak ko gan, menurut pengalaman saya justru R10k ini membuat buttonnya stabil tanpa adanya bounce,,, silahkan dicoba aja gan...
Hapuskalo shorting berati ada masalah sama rangkaian agannya, coba periksa kembali dan sesuaikan dengan tutorial diatas ;)
HapusSaya mulai mengerti, jadi ini yang di sebut pulup/puldown. mengisi nilai yg kosong. :D
HapusMau tanya mas,, kalo tombol di tekan led akan nyala dan tombol di lepas led tetap nyala sampai di tekan lg tombolnya baru led mati,,
BalasHapus1 button dengan 2 fungsi ya! harus pake program count, biar jelas nanti saya posting saja tutorialnya :)
Hapussilahkan buka postingan http://www.kelasrobot.com/2017/07/menghidupkan-dan-mematikan-led-dengan-satu-tombol.html
Hapusmau tanya mas, kalo ketika pushbutton ditekan sekali, led menyala. jika pushbutton ditekan lagi led berkedip. itu gimana ya?
BalasHapusuntuk refrensi coba buka aja:
Hapuswww.kelasrobot.com/2017/07/menghidupkan-dan-mematikan-led-dengan-satu-tombol.html
Mas saya ada tugas nih.
BalasHapusKalo kita menggunakan 2 led tapi menggunakan 1 button..
Kita tekan button lampu led1 huidup.. lalu kita tekan button led 1 mati.. kita tekan lagi button led 2 yang hidup.. bagaimana program nya mas?
untuk refrensi coba buka aja:
Hapuswww.kelasrobot.com/2017/07/menghidupkan-dan-mematikan-led-dengan-satu-tombol.html
Mas...mw tanya...
BalasHapusJika button 1 di tekan, maka led dan button 2 aktif dengan delay 5000, sebelum mencapai delay 5000..button 2 di tekan, maka led mati, kemudian button 2 di lepas...led nyala lagi sampai delay habis...gimana programnya ya mas ?
hampir sama sih mas, tinggal nambagin program baru aja untuk button yang kedua.
HapusMkasih turialnya mas sngat membantu sekali, mw nnya mas, klw mw bikin led ny on pda saat pushbutton di tekan sekali hingga pushbutton dilepas lednya ny tetap on,dan untuk meng off kannya, button ny ditekan lagi, gimna program nya tu mas, mohon bantuanya..
BalasHapusuntuk refrensi coba buka aja:
Hapuswww.kelasrobot.com/2017/07/menghidupkan-dan-mematikan-led-dengan-satu-tombol.html
Komentar ini telah dihapus oleh pengarang.
BalasHapusmas kalo ini ketika saklar HIGH nyala lednya 20% contonya itu gimana mass?
BalasHapustinggal pake program PWM analogRead(pinled, nilaiketerangan);
Hapuscontoh analogRead(3, 50);
nilainya 0-225
Tutorialx good, bagaimana bikin perintah jika tombol push buttonnya ada 8 dan autputnya juga 8 dengan kondisi output toggle. terimah kasih
BalasHapustinggal nambahin program untuk ke 7 inputnya lagi aja, tapi yang perlu dipahami disini arduino uno pinnya terbatas.
HapusManthap && jos tutor'y..
BalasHapusOya Mas,? mau tanya && minta ilmu || jurusnya, gimana cara menyalakan 5 led dalam satu button,,? Jadi jika button di tekan LED1 akan menyala dan tekan lagi LED2 menyala, sampai 5 led. Mohon bantuannya mas.? Hehe
untuk refrensi coba buka aja:
Hapuswww.kelasrobot.com/2017/07/menghidupkan-dan-mematikan-led-dengan-satu-tombol.html
ka mau tanya, bagaimana mencacah dengan arduino ya? jadi semisal ketika kita menekan tombol maka arduino akan mengcount sendiri sampai batas tertentu yang ditampilkan dilcd
BalasHapusmaksudnya dengan menekan tombol, angka pada LCD bertambah?
HapusMau nanya mas, kalo button buat ngirim sms pke gsm shield gimna yah?
BalasHapuska kalau mau menyalakan 5 led secara bergantian dengan 1 tombol pushbutton gmn caranya ya ka??
BalasHapus