Program Arduino: Digital Read Push Button!

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…

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;

  1. Jika button ditekan lampu LED mati, jika tidak menyala.
  2. Jika button ditekan lampu LED berkedip, jika tidak hanya menyala.
  3. Jika button ditekan lampu LED berkedip cepat, jika tidak berkedip lambat.

Jika ada yang masih kurang jelas, kamu bisa buka dulu:

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 😉