La Red de Conocimientos Pedagógicos - Currículum vitae - Microcontrolador MSP430, ¿cómo salta el código de usuario a la ejecución del código BSL incorporado?

Microcontrolador MSP430, ¿cómo salta el código de usuario a la ejecución del código BSL incorporado?

JTAG es una tecnología de escaneo de límites. Tiene una interfaz lógica dentro del 430 para uso de JTAG. Hay varios registros internos conectados al bus de direcciones de datos interno del 430, por lo que puede usar JTAG para acceder a todos. recursos dentro del 430. Incluyendo operaciones de lectura y escritura en FLASH. Por lo tanto, se puede utilizar para simulación y programación de MSP430. Las principales líneas de conexión son TMS, TCK, TDI, TDO, RST y TEST.

2. SBW es SPY-BI-WIRE, que puede denominarse JTAG de dos cables. Utiliza principalmente SBWTCK (conectado al TCK de 7 pines del emulador JTAG) y SBWTDIO (conectado a). (el TDO de 1 pin del emulador JTAG) /TDI), esta interfaz se utiliza principalmente para 2 microcontroladores de la serie 430 con menos de 28 pines porque la interfaz JTAG de 2 microcontroladores de la serie con menos de 28 pines generalmente se reutiliza con puertos IO. , se introdujo para reservar más puertos IO para los usuarios de la interfaz SBW. La misma interfaz SBW se puede utilizar en emuladores y programadores.

3. BSL es un fragmento de código que TI solidifica previamente en la MCU cuando envía el MSP430. Es algo similar al gestor de arranque DSP, pero obviamente es diferente del gestor de arranque BSL. Se puede usar para controlar el acceso FLASH dentro de la MCU y no puede acceder a otros recursos, por lo que solo se puede usar como interfaz de programador. BSL se comunica con el programador a través del protocolo UART. El programador puede enviar diferentes comandos de comunicación para realizar diferentes operaciones en la memoria de la MCU. El inicio de BSL es algo especial. Generalmente, el puntero de la PC apunta al vector de reinicio FFFE cuando se inicia el reinicio 430, pero se puede usar un método de inicio especial para hacer que la MCU apunte la PC al programa solidificado dentro del BSL durante el inicio. . El modo de inicio generalmente se genera mediante una lógica de inicio ligeramente compleja entre el pin RST y el pin TEST (o TCK). Una vez iniciado BSL, se puede acceder a la MCU.

Las MCU generales tienen funciones de cifrado de código. ¿Cómo lo implementa 430? El código externo solo se puede leer y escribir a través de los tres métodos mencionados anteriormente, por lo que los bits fusibles y los fusibles solo existen dentro del JTAG. y lógica de interfaz SBW. No hay ningún fusible dentro del BSL. Cuando el fusible esté fundido (daño físico e irrecuperable), se prohibirá el acceso a JTAG y SBW, y en este momento solo se podrá acceder a BSL. El acceso a la MCU a través de BSL requiere una contraseña de 32 bytes, que es la tabla de vectores de interrupción del código de usuario. Por lo tanto, hasta el momento no hay informes de que se haya descifrado el sistema de cifrado 430.

Los modelos de emulador generalmente incluyen UIF (interfaz USB, admite JTAG, SBW), PIF (puerto paralelo, solo admite JTAG) y EZ430 (interfaz USB, solo admite modo SBW). Los programadores profesionales incluyen GANG430 (puerto serie