Interrupciones en Arduino

Interrupciones en Arduino
En la programación de Arduino para evitar un robo se usa el flujo de las interrupciones de código. Estas interrupciones consisten en instrucciones especiales para el obstáculo respectivo causado en el funcionamiento del código. De manera similar, las interrupciones también se pueden usar para monitorear cualquier otra tarea en un momento específico. Este discurso explica las interrupciones brevemente utilizadas en Arduino

¿Qué son las interrupciones?

Para comprender el concepto de interrupciones, podemos tomar un escenario de un accidente automovilístico. Supongamos que el automóvil se mueve por la carretera y el microcontrolador monitorea continuamente la electrónica del automóvil, como medir la velocidad del automóvil y la temperatura de la cabina y cosas así. De repente, el automóvil golpea algo, luego la computadora del automóvil detiene todo y ejecuta la apertura de las bolsas de aire. Entonces, aquí en este ejemplo, el accidente es una interrupción y la apertura de la bolsa de aire es la instrucción dada si se produce esta interrupción. Entonces, después de abrir las bolsas de aire, la computadora continuará realizando sus funciones de rutina.

Interrupciones en Arduino

En la programación de Arduino para manejar la interrupción, se utiliza una función llamada rutina de servicio de interrupción. Esta función se llama cuando la interrupción se activa a medida que esta función lleva la instrucción para ejecutar cuando se activa cualquier interrupción. Las interrupciones pueden estar basadas en software o basadas en hardware, en su mayoría las interrupciones en Arduino están basadas en hardware.

Interrupciones de hardware: Cuando un robo es causado en el flujo de un programa Arduino por cualquiera de los dispositivos de entrada intercalados con Arduno se denomina interrupción del hardware.

Interrupciones de software: Cuando el flujo del programa Arduino se interrumpe debido a la computadora o a algún software, estos tipos de interrupciones se denominan interrupciones de software.

Para las interrupciones basadas en hardware se utilizan dos pines para Arduino Uno Board, es decir, el PIN número 2 y 3 y estos pines varían para cada placa.

La función utilizada para declarar la interrupción es la Adjuntarinterrupt () función. Esta función tiene tres argumentos: primero es el pin de interrupción, el segundo es la rutina de servicio de interrupción (ISR) y el último es el estado en el que ocurrirá la interrupción. Del mismo modo, declarar el pin de interrupción para el Arduino DigitalPintoInterrupt () se utiliza la función. La sintaxis para la función adjunta se da como:

adjunteinterrupts (DigitalPinToInterrupt (PIN), ISR, Modo);

Hay cinco modos que se utilizan para definir el estado de interrupción que son los siguientes:

  • Cuando el estado cambie a bajo desde alto, el modo en el que se activará la interrupción BAJO.
  • Si el PIN cambia su estado a alto desde la baja, por lo que el modo de interrupción será ALTO.
  • Cuando la interrupción se activará cuando hay un cambio en el estado del pasador, ya sea alto o bajo, el modo CAMBIAR se utilizará.
  • Cuando la interrupción se active a medida que el estado va de bajo a alto el CRECIENTE el modo se dará.
  • Cuando la interrupción se active a medida que el estado va de alto a bajo el DESCENDENTE El modo se administrará para la función de interrupción.

Ejemplo

Para dar una imagen clara de las interrupciones en Arduino se ilustra un ejemplo de interrupción. En este ejemplo, el cambio en el estado de alto a bajo de LED se toma como un desencadenante para la interrupción y se da el código de activar una interrupción:

const int ledpin = 12;
const int Interruptpin = 2;
estado bool = alto;
setup () void
PinMode (LEDPIN, estado);
PinMode (interruptpin, input_pullup);
adjunteinterrupts (digitalpintointerrupt (interruptpin), parpadeo, cambio);

bucle void ()
DigitalWrite (LEDPIN, Estado);

void parpadeo ()
estado = !estado;

Diagrama de circuito

Conclusión

Las interrupciones en Arduino se utilizan para manejar los robos esperados en el flujo del código. Las interrupciones también se pueden utilizar para realizar cualquier tarea de mayor prioridad en un momento específico rompiendo el flujo de trabajo del programa Arduino. Después de manejar la interrupción, el programa realizará las tareas normales que estaba realizando. En este artículo, ¿qué son las interrupciones y cómo se usan en Arduino se discuten brevemente?.