Os adjunto aquí un sencillo programa Arduino donde se demuestra como usar interrupciones de pines en el IDE Arduino.
Funciona definiendo un pin como INPUT_PULLUP, de manera que normalmente está en positivo. Uniendo ese pin con tierra (directamente, con un cable o un botón), el pin cambia a negativo. En cada cambio se lanza una interrupción que lee el pin y toma decisiones según el estado anterior y el tiempo transcurrido. En el loop se manejan las acciones para cada variable programada en la interrupción.
Por comodidad he probado el programa en un NodeMCU (ESP8266), pero debería servir para cada casi cualquier microcontrolador, mientras tenga PULLUP. Se podría cambiar la lógica a PULLDOWN y usar VCC para activar el pin.
Puedes cambiar el pin de entrada cambiando la definición BUTTON_PIN; en el programa la he definido como el pin D6 del NodeMCU.
Quiero resaltar que éste no es un buen sistema para usar botones; hay librerías disponibles mucho mejores, pero es un buen ejemplo para aprender a usar interrupciones.
Sencillo Ejemplo de manejo de interrupciones en Arduino
-
- Administrador del Sitio
- Mensajes: 507
- Registrado: 04 Jul 2016, 11:17
- Agradecido: 110 veces
- Agradecimiento recibido: 134 veces
Sencillo Ejemplo de manejo de interrupciones en Arduino
- Adjuntos
-
- ESP_INTERUPT_TEST.ino
- (2.28 KiB) Descargado 523 veces
Tags:
-
- Administrador del Sitio
- Mensajes: 507
- Registrado: 04 Jul 2016, 11:17
- Agradecido: 110 veces
- Agradecimiento recibido: 134 veces
Re: Sencillo Ejemplo de manejo de interrupciones en Arduino
También tenéis disponible este ejemplo en GitHub: https://github.com/Naguissa/ESP_INTERUPT_TEST
-
- Similar Topics
- Respuestas
- Vistas
- Último mensaje
-
- 2 Respuestas
- 17881 Vistas
-
Último mensaje por Naguissa
-
- 3 Respuestas
- 17918 Vistas
-
Último mensaje por Naguissa
-
- 1 Respuestas
- 14528 Vistas
-
Último mensaje por Naguissa
-
-
Crear pulsador táctil capacitivo sencillo
por Naguissa » » en Electrónica digital - microcontroladores - 0 Respuestas
- 7532 Vistas
-
Último mensaje por Naguissa
-
-
- 1 Respuestas
- 3593 Vistas
-
Último mensaje por Naguissa