Pada kesempatan kali ini saya akan membahas tentang Input digital pada Arduino, kali ini saya akan meneruskan materi tentang Komunikasi Serial pada Arduino yang sudah saya bahas pada kemarin. Bagi yang belum membaca anda bisa Klik Disini. Tanpa basa basi lagi mari kita mulai pembahasan kali ini yaitu tentang Input Digital.
Konsep kerja input digital sendiri berkebalikan dari output digital. Input digital digunakan untuk mendeteksi perubahan logika biner pada pin tertentu. Adanya input digital memungkinkan mikrokontroler untuk dapat menerjemahkan 0V menjadi logika LOW dan 5V menjadi logika HIGH.
Sebenarnya penentuan logika HIGH dan LOW tidaklah saklek pada 5V dan 0V saja.
Bagaimana jika ada tegangan sebesar 2.5V yang terdeteksi oleh sistem? Apakah ia dianggap logika HIGH? atau logika LOW?
Di sinilah threshold (batas) pada logic level berperan.
Logic level threshold yang lazim digunakan saat ini mengacu pada dua buah teknologi bernama CMOS dan TTL. Teknologi CMOS dan TTL memiliki thresholdyang berbeda, berikut perbandingannya:
Teknologi | LOW Voltage | HIGH Voltage | Keterangan |
---|---|---|---|
CMOS | 0 V to 1/3 VDD | 2/3 VDD to VDD | VDD = supply voltage |
TTL | 0 V to 0.8 V | 2 V to VCC | VCC = 5 V ±10% |
Komponen yang digunakan :
- Arduino
- Resistor 330 ohm
- Push Button
- Protoboard
1.Buka aplikasi Arduino
2.Tentukan Port yang akan digunakan.
3.Tulis kode berikut di Arduino.
// pin digital nomor 2 telah terpasang sebuah pushbutton. Beri nama pushbutton ini ‘tombol’
int tombol = 2;
int led1 = 13;
int led2 = 12;
void setup() {
// mulai komunikasi serial dengan baud rate 9600 bits per second
Serial.begin(9600);
// jangan lupa deklarasikan tombol sebagai input
pinMode(tombol, INPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
}
void loop() {
// baca state tombol
int keadaanTombol = digitalRead(tombol);
// print state tombol melalui serial
if (keadaanTombol == 1) {
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
Serial.println("Tombol ditekan");
} else {
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
Serial.println("Tombol tidak ditekan");
}
delay(100); // delay 100 milisekon
}
4.Upload dan pastikan sukses dalam mengupload.
5.Klik pada serial Monitor.
6.Saat masuk di Serial Monitor. Tekan Push Button dan jika ditekan ada indikator berupa tulisan dan jika tidak ditekan juga terdapat indikator di Serial Monitor.
Penjelasan :
Jika Push Button ditekan maka Led 1 nyala dan Led 2 mati dan akan muncul tulisan "Tombol ditekan" dan jika Push Button tidak ditekan / dilepas maka Led 2 nyala dan Led 1 mati dan akan muncul tulisan "Tombol tidak ditekan". Tombol on dan Tombol off merupakan state digital push button yang terbaca pada pin input digital Arduino yang digunakan.
Selamat Mencobaaa ~
0 komentar:
Posting Komentar