Una placa con STM32F103C8T6 a veces se encuentra con un manejador de fallas.
Cuando caliento la placa a 65C o más, se producirá un fallo grave al azar, lo que me lleva a comprobar si la latencia del flash no es suficiente.
Luego establezco la latencia del flash en 1 reloj, el problema se resuelve, el chip funciona de manera estable incluso cuando lo caliento a 100 ° C.
Pero no tiene sentido porque la CPU funciona a 24MHZ (HCLK es 24MHZ), lo que significa que no se necesita latencia de flash como dice la hoja de datos.
Aquí está mi configuración detallada del reloj: La fuente del reloj es 16MHZ dada por el cristal externo, y la PLL es 3x (necesito usar USB, por lo que se necesita un reloj de 48MHZ en SYSCLK), luego el prescaler AHB está configurado a 2, por lo que el reloj de la CPU es de 24MHZ. / p>
Busqué la hoja de datos y no dice claramente dónde está sincronizado el flash, pero dice "Las instrucciones de la memoria flash y el acceso a los datos se realizan a través del bus AHB", significa que el reloj del flash es igual a AHB (24MHZ en mi aplicación)? Pero no funciona de forma estable, ¿en qué me equivoco?
Gracias