AttachInterrupt Arduino

Posted: January 30, 2013 by Rinanda Febriani in Bahasa C, Microcontroller

Pada pembasan sebelumnya mengenai pemograman pada arduino, telah dibahas mengenai sebuah metode Intterupt. Pada metode intterupt kali ini, menggunakan metode AttachInterupt.  Dimana dengan  AttachInterrupt  memudahkan user dalam mengolah data arduino dengan sebuah interrupt. Pada setiap boards arduino memiliki 2 pin interrupt. pada arduino uno, memiliki 2 buah pin interrupt yang dapat difungsikan yaitu pin 2 digital (int 0), dan pin 3 digital (int 1). untuk mode interrupt external terdiri atas 4 kondisi, yaitu:

  1. LOW, fungsi interrupt yang dijalankan untuk kondisi pin rendah,
  2. CHANGE, fungsi interrupt yang dijalankan setiap kali perubahan pin nilai,
  3. RISING, fungsi interrupt yang dijalankan jika terjadi perubahan nilai pin dari LOW ke HIGH,
  4. FALLING, fungsi interrupt yang dijalankan jika terjadi perubahan nilai pin dari HIGH ke LOW.

untuk penjelasan lebih lengkap, berikut halaman mengenai AttachInterrupt http://arduino.cc/en/Reference/AttachInterrupt.

arduino-interrupt

Berikut program AttachIntterupt untuk kondisi HIGH dan LOW sebuah led.

int pin=13; //variabel pin 13, untuk LED
volatile int state=LOW; //kondisi awal led sebelum diberikan sebuah interrupt
void setup(){
Serial.begin(9600);
pinMode(pin, OUTPUT);
attachInterrupt(0, blink, CHANGE); // untuk "0" yaitu menjalankan fungsi interrupt pada pin 2 digital, 
blink adalah class eksekusi interrupt 
dan "CHANGE" metode interrupt.
}
void loop(){
digitalWrite(pin, state);
}
void blink(){
state = !state;
}

Leave a comment