Esta experiência mostra o uso do ISR. Consiste em que ao pressionar o botão, sem importar o momento, o led mudará seu estado: se estiver aceso, se apagará, e vice versa.
Lição do curso:
Coursera: Electrones en Acción: Electrónica y Arduinos para tus propios Inventos
Pontificia Universidad Católica de Chile
Implementação em Autodesk Circuits
int Btn0 = 2; // Pin ligado a int.0
int Btn1 = 3; // Pin ligado a int.1
int pinLed = 11;
void setup() {
pinMode(Btn0, INPUT);
pinMode(Btn1, INPUT);
pinMode(pinLed, OUTPUT);
attachInterrupt(0,apaga_led, RISING);
attachInterrupt(1,acende_led, RISING);
Serial.begin(9600);
delay(2000);
}
void loop() {
delay(2500);
Serial.print("Passaram ");
delay(2500);
Serial.println("5 segundos");
}
/* A função de interrupção muda o presente estado do led */
void apaga_led() {
digitalWrite(pinLed, 0);
}
void acende_led() {
digitalWrite(pinLed, 1);
}
No comments:
Post a Comment