STM32F303 Nivel de protección de lectura 1 - los programas no se inician en absoluto

0

Nunca protejo la memoria FLASH, pero esta vez es el requisito de mi cliente. Tengo mi propio gestor de arranque y la aplicación lista. Todo funciona bien si el nivel de protección es cero. Pero si lo cambio (no importa si uso la utilidad ST-LINK o si se realiza desde el cargador de arranque) al Nivel 1, el programa simplemente no funciona. Sé que es ridículo decir "el programa no funciona", pero durante las pruebas escribí un simple programa de parpadeo de LED. Solo habilita el reloj GPIO y enciende el LED. Funciona bien en el nivel 0, pero deja de funcionar en el nivel 1. Según entiendo, el cambio del nivel 0 al 1 o 2 no borra el FLASH (lo hace en la dirección opuesta). No puedo echar un vistazo dentro ya que las interfaces de depuración están deshabilitadas.

El arranque 0 está conectado mediante una resistencia de 10k a la GND.

    
pregunta P__J__

1 respuesta

2

Cosa tonta. Después de configurar el nivel de protección, se necesita Reinicio de encendido . Ningún otro tipo de reinicio reinicia el micro. Después de reiniciar el equipo, todo funciona bien. (por supuesto, solo se necesita un POR después del cambio de nivel de protección).

Está en el RM, no lo he notado

  

Si la protección de lectura se establece mientras el depurador aún está conectado   A través de JTAG / SWD, aplique un POR (reinicio de encendido) en lugar de un sistema   restablecer.

    
respondido por el P__J__

Lea otras preguntas en las etiquetas