Aún luchando con el cargador de arranque STM32F051C8T6

1

He estado leyendo la información disponible en ST.com sobre la creación de un cargador de arranque para un microcontrolador STM32F0xxx, y dice lo siguiente:

"El cargador de arranque se activa automáticamente configurando los pines BOOT0 y BOOT1 en el configuración específica de "Memoria del sistema" y luego aplicando un reinicio ".

"En algunos productos, BOOT1 no es una E / S sino un bit en el área de bytes de opción. Este es el caso de Los dispositivos STM32F05x y STM32F3xx donde BOOT1 se configura mediante el bit nBoot1 en los bytes de opción. "

"El hardware requerido para poner los dispositivos STM32F051xx en el modo de inicio de la memoria del sistema consiste en cualquier circuito, interruptor o puente, capaz de mantener el pin BOOT0 alto mientras El bit nBOOT1 en los bytes de opción (comenzando en la dirección 0x1FFFF800) se establece en valor 1. La configuración de este bit se puede hacer a través de la utilidad STLINK o una herramienta equivalente. "

Entonces, si quiero cargar mis programas en este microcontrolador, necesito configurar el bit nBOOT1 en 1 por software. Pero, ¿cómo puedo cambiar su valor si todavía no me he comunicado con él, ya que necesito cambiarlo antes de comunicarme? : S

Entonces, ¿necesito comprar la utilidad STLINK si quiero cargar mis programas personalizados? : S

    
pregunta Deivad

2 respuestas

1

Sección 2.5 de manual de referencia indica que la memoria del sistema (que contiene el cargador de arranque cargado de fábrica en la parte) se activa cuando BOOT0 se mantiene alto en el inicio y nBOOT1 se establece en 1 (BOOT1 se establece en 0).

Lasección4.1.1delmismomanualindicaqueelvalorpredeterminadodenBOOT1esdehecho1.Porlotanto,parecequetodoloquenecesitaparainiciarelcargadordearranqueesconfigurarelpinBOOT0aaltoalinicio.

Luego puede ejecutar el código cargado configurando BOOT0 a bajo en el inicio. Cuando BOOT0 está bajo, el código del flash incrustado se ejecuta independientemente del estado de nBOOT1.

    
respondido por el abey
0

nBOOT1 está activo de forma predeterminada, por lo que no necesita STLINK, simplemente conecte Boot0 a VCC antes del encendido.

    
respondido por el user2053898

Lea otras preguntas en las etiquetas