0% encontró este documento útil (0 votos)
4 vistas2 páginas

Código Arduino para Interrupciones de Botones

El documento define constantes para los pines de cuatro botones y una interrupción. La interrupción detecta qué botón fue presionado y envía el número de botón por serial. El bucle principal imprime el número de botón presionado y una cuenta cada segundo.

Cargado por

jesus
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas2 páginas

Código Arduino para Interrupciones de Botones

El documento define constantes para los pines de cuatro botones y una interrupción. La interrupción detecta qué botón fue presionado y envía el número de botón por serial. El bucle principal imprime el número de botón presionado y una cuenta cada segundo.

Cargado por

jesus
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

#define boton1 13

#define boton2 14

#define boton3 15

#define boton4 16

#define tiempo 500

int i=0;

int dato=0;

int tiempo_anterior=0;

void isr(){

if (!digitalRead(dato)) boton1 = 1;

else if (!digitalRead(dato)) boton2 = 2;

else if (!digitalRead(dato)) boton3 = 3;

else if (!digitalRead(dato)) boton4 = 4;

else dato = 0;

void setup() {

[Link](115200);

pinMode(boton1,INPUT_PULLDOWN);

pinMode(boton2,INPUT_PULLDOWN);

pinMode(boton3,INPUT_PULLDOWN);

pinMode(boton4,INPUT_PULLDOWN);

attachInterrupt(boton1,isr,RISING);//LOW,HIGH,CHANGE,RISING,FALLING

attachInterrupt(boton2,isr,RISING);

attachInterrupt(boton3,isr,RISING);

attachInterrupt(boton4,isr,RISING);

}
void loop() {

if (dato)

if (millis()-tiempo_anterior > tiermpo)

[Link]("¡Interrupción ");

[Link](dato);

tiempo_anterior = millis();

dato = 0;

[Link](i);

i=i+2;

delay(1000);

También podría gustarte