Interrupt External Arduino

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

Interrupt dalam pemograman arduino, merupakan sebuah class yang digunakan untuk mengolah program, dimana ketika sebuah program sedang berjalan , sebuah interrupt dapat dijalankan untuk menghentikan program secara internal interrupt dengan misalnya mengatur timer, dan external interrupt dengan memberikan interrupt melalui sebuah rangkaian hardware contohnya switch. Pada program berikut ditampilkan program interrupt external. dengan mengendalikan led, yang dirangkai pada pin 13 dan ground, kemudian kaki resistor yang dihubungkan pada pin 2 beserta ground, dan ground. berikut rangkaian yang akan difungsikan sebagai intterupt led.

arduino-interrupt

Berikut program interrupt arduino:

#include < avr/io.h >
#include < avr/interrupt.h >
int ledPin = 13;
int sensePin = 2;
volatile int value = 0;
// Install the interrupt routine.

ISR(INT0_vect) {
 value = digitalRead(sensePin);
}

void setup() {
 Serial.begin(9600);
 Serial.println("Initializing ihandler");
 // sets the digital pin as output
 pinMode(ledPin, OUTPUT);
 // read from the sense pin
 pinMode(sensePin, INPUT);
 Serial.println("Processing initialization");
 // Signal change triggers interrupt
 EIMSK |= (1 << INT0); 
 MCUCR |= ( 1 << ISC00);
 MCUCR |= ( 0 << ISC01);
 Serial.println("Finished initialization");
}

void loop() {
 if (value) {
 Serial.println("Value high!");
 digitalWrite(ledPin, HIGH);
 } else {
 Serial.println("Value low!");
 digitalWrite(ledPin, LOW);
 }
 delay(100);
}

dari program diatas bila telah berhasil dirunning, maka LED akan bernilai HIGH jika ground pada resistor dilepaskan, sebaliknya LED akan bernilai LOW jika ground resistor terhubung pada ground. Dan untuk serial monitor akan ditampilkannilai yang sama dengan kondisi LED, Value high untuk kondisi ground resistor tidak terhubung. Dan kondisi Value low sebaliknya.

sm

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s