Léxico TI › Hardware › Rutina de servicio de interrupción (ISR)

Rutina de servicio de interrupción (ISR)

Hardware Svenska → Actualizado: 2026-11-03

La función a la que salta el procesador cuando llega una interrupción: código que se ejecuta con tiempo prestado, en mitad de otra cosa.

Su dirección sale de la tabla de vectores de interrupción. En Cortex-M una ISR es una función C corriente, porque el propio hardware apila los registros en un marco de excepción; en arquitecturas más antiguas hacía falta un prólogo en ensamblador o la palabra clave __interrupt del compilador de turno.

Las reglas básicas son las mismas en todas partes: que sea corta, que nunca bloquee, que borre el flag de interrupción antes de salir (si no, vuelve a dispararse al instante) y que comparta datos con el programa principal mediante variables volatile o una sección crítica. El trabajo pesado se delega a una tarea; véase manejo diferido de interrupciones. FreeRTOS tiene llamadas …FromISR() aparte precisamente porque la API normal puede intentar dormir, y una ISR no puede permitírselo.

← Volver al léxico