Una interrupción es un recurso del cual disponen la
mayoría de los procesadores y microcontroladores en el mercado hoy en día. Permiten
cambiar la continuidad de ejecución de un programa, para atender una necesidad,
ya sea externa o interna.
Como ejemplo, un botón de RESET puede ser visto como una
fuente de interrupción que de manera asíncrona detiene todos los procesos y
reinicia el sistema por completo. Incluso, dependiendo del sistema, lo puede
llevar a un estado inicial.
Las interrupciones se manejan de distintas formas según
el procesador, fabricante, desarrollador, etc. Hablando a nivel de
microcontroladores, la mayoría tienen algo en común, y es como atienden dicha
interrupción. Al recibirse una señal de interrupción, se abre la brecha en la
continuidad del programa en ejecución, y se recurre a un registro llamado
“Handler”, el cual, dependiendo del microcontrolador, contendrá el código de
ejecución para atender la interrupción, o contendrá una dirección donde se
encontrará dicho código.
Entre las utilidades de las interrupciones podemos
encontrar cosas tan simples como cambiar el valor de un puerto de 0 a 1, hasta
cosas tan complejas como lo es un despachador de tareas, he allí, el poder de
este recurso.
Las interrupciones pueden tener fuentes internas y
externas. Una fuente de interrupción interna puede ser por ejemplo, un error
por overflow o la finalización de un contador; una fuente externa, puede ser un
botón de reset, también una señal de control o un detector de cambios de nivel.

No hay comentarios:
Publicar un comentario