Actualmente estoy intentando averiguar por qué parece que una MCU se está estrellando / congelando. Puedo recrear el bloqueo / congelación casi todas las veces haciendo el mismo procedimiento, y he estado revisando el código exhaustivamente, tratando de encontrar cuál podría ser el problema, pero parece que no puedo encontrar al culpable.
Se está ejecutando un temporizador en la MCU con una interrupción cada 10 us. Para intentar depurarlo más, agregué un código para alternar un diodo (cada 100 ms) dentro de esta interrupción, y de repente este diodo deja de parpadear y la MCU no responde. No hay comunicación USB / UART, etc., todo parece muerto. He medido el voltaje VDD y parece estar bien, no hay fallas / caídas de voltaje.
No escribí el código, pero lo he reducido a una parte que se encarga de decodificar una señal en serie que llega a través de una interrupción de pin. Pero no más lejos.
La MCU es un AT32UC3 y tengo un depurador ATMEL-ICE, pero no tengo mucha experiencia con la depuración en una MCU en vivo.
Sospecho que podría ser una parte de la memoria que se está escribiendo y corrompiendo, pero no estoy seguro.
¿Algún consejo sobre cómo proceder con este tipo de problema?