Sunday, 9 October 2016

Input Digital Arduino



HALLO GAN SIST!
Kembali lagi di blog newbie ini. Setelah kemarin ane berbagi tentang Komunikasi Serial Arduino, sekarang ane mau share tentang input digital pada arduino. 
Di materi kali ini ane contohin input yang sederhana pake switch.

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.

Untuk membaca sinyal digital pada Arduino digunakan sintaks digitalRead(pin);

  • Siapin alat-alatnya gan :
  1. Arduino Uno
  2. Tacticle Switch 2 kaki
  3. Resistor 330 Ω
  4. Kabel Jumper
  5. Breadboard
  • Buka software Arduino IDE.
  • Tentukan dahulu pin untuk switch yang akan digunakan, untuk menuliskan variabel agar lebih mudah saat di program utama, gunakan fungsi integer.


  • Tentukan konfigurasi pin untuk input switch.
  • Tulis program utamanya.
  • Untuk program bisa copy dibawah ini.
// REBUILT BY @MARTINPMT

int pb = 2; // Posisi pin untuk push button di pin 2

void setup() {
  Serial.begin(9600);
  pinMode(pb,INPUT); // Konfigurasi pb (pin 2) sebagai input
}

void loop() {
  int aktifpb = digitalRead(pb);
if (aktifpb == 1){
  Serial.println("pb on"); // Kalimat yang muncul jika PB ditekan
} else{
  Serial.println("pb off"); // Kalimat yang muncul jika PB tidak ditekan
}
delay (100); // Jeda selama 100ms
}

// ©2016

  • Jika sudah, rangkai arduino dengan komponen lain dengan wiring/pengkabelan sebagai berikut.
  1. Pin kiri switch ke pin 2 arduino.
  2. Pin kanan switch ke pin 5V arduino.
  3. Resistor sambungkan ke pin 2/pin kiri switch.
  4. Keluaran resistor ke pin GND arduino. 
Kalo kurang jelas klik aja gan lalu di zoom (shortcut zoom in/out  Ctrl+Scroll Up/Down)
  • Tentukan Port COM arduino, kalo agan pake PC, pilih COM selain COM1. Dan jangan lupa kita menggunakan arduino UNO, pastikan di Tools>Board>Arduino/Genuino Uno.
  • Sekarang arduino connected dengan komputer. Klik Verify untuk compile program.

  • Jika program agan berhasil, di status bar akan tertulis "Done Compiling" lalu klik Upload untuk mengupload program ke arduino.

Klik ikon yang diberi tanda merah untuk mengupload.
  • Sesudah terupload, buka serial monitor Tools>Serial Monitor atau melalui shortcut Ctrl+Shift+M atau bisa juga dengan klik icon di samping kanan.
  • Akan muncul jendela sebagai berikut, jika switch tidak ditekan maka muncul "pb off" jika switch ditekan muncul "pb on". Untuk kalimatnya bisa diganti sesuai keinginan di bagian program utama Serial.println("ini bisa diganti");


  • Pengembangan dengan output 2 led, untuk wiringnya :
  1. Kedua katoda led ke GND/keluaran resistor.
  2. Anoda led 1 ke pin 9 arduino.
  3. Anoda led 2 ke pin 10 arduino.
  • Programnya dapat dilihat dibawah ini.

// REBUILT BY @MARTINPMT

int pb = 2; // Posisi pin untuk push button di pin 2
int led =9;
int led1 =10;

void setup() {
  Serial.begin(9600);
  pinMode(pb,INPUT); // Konfigurasi pb (pin 2) sebagai input
  pinMode(led,OUTPUT);
  pinMode(led1,OUTPUT);
}

void loop() {
  int aktifpb = digitalRead(pb);
if (aktifpb == 1){
  digitalWrite(led1,LOW);
  digitalWrite(led,HIGH);
  delay(100);
  digitalWrite(led,LOW);
  delay(100);
  digitalWrite(led,HIGH);
  Serial.println("pb on"); // Kalimat yang muncul jika PB ditekan
} else{
  digitalWrite(led,LOW);
  digitalWrite(led1,HIGH);
  delay(100);
  digitalWrite(led1,LOW);
  delay(100);
  digitalWrite(led1,HIGH);
  Serial.println("pb off"); // Kalimat yang muncul jika PB tidak ditekan
}
delay (100); // Jeda selama 100ms
}

// ©2016

  • Hasilnya, jika PB tidak ditekan (keadaanawal) maka led 2 blinking dengan jeda 100ms, led 1 mati.
  • Jika PB ditekan maka led 1 blinking dengan jeda 100ms, led 2 mati.


Source Program Input saja download disini.
Source Program Input dengan output 2 led blink download disini.


        Itu contoh program sederhananya, bisa ditambah output led, motor dan sebagainya. Untuk inputannya juga bisa berupa potensio, sensor, dan masih banyak lagi. Sekian dulu gan, pengembangannya bisa googling atau berkreasi sendiri. Terima kasih telah mengambil keputusan untuk membaca postingan ini.

Happy Coding!


Referensi:
https://www.arduino.cc
http://www.sinauarduino.com/artikel/input-digital-arduino/



Share:

1 comment:

  1. 1xbet - No 1xbet Casino | Live dealer casino online
    1xbet is a reliable casino site gri-go.com that offers a great gri-go.com casino games from the best software providers 1xbet korean for the regulated gambling markets. Rating: 8/10 · ‎Review by sol.edu.kg a Tripadvisor user · herzamanindir.com/ ‎Free · ‎Sports

    ReplyDelete