El cargador de arranque (BSL) de los microcontroladores (MCU) MSP430™ permite que los usuarios se comuniquen con memoria integrada en los MCU MSP durante la fase de creación de prototipos, la producción final y el servicio. Esto se realiza a través de interfaces estándar, como el transmisor/receptor asíncrono universal (UART), el circuito interintegrado (I2C), la interfaz periférica en serie (SPI) y USB. Tanto la memoria programable (Flash/FRAM) como la memoria de datos (RAM) se pueden modificar según sea necesario.
A continuación, se presentan los pasos necesarios para comprender y utilizar el MSPBSL de manera eficaz con toda la cartera de MSP. Para obtener la información más actualizada sobre las funciones compatibles con el BSL de su dispositivo o los métodos de interfaz necesarios para comunicarse con el BSL, consulte la “TABLA 1. Información general sobre las funciones del BSL”, que se encuentra en las guías de usuario de BSL vinculadas en el PASO 1.
PASO 1: Comprender el cargador de arranque (BSL) MSP
Algunas aplicaciones requieren un cargador de arranque personalizado para cumplir con los requisitos no proporcionados por el BSL. Además, algunos MCU MSP, como MSP430F5xxx, MSP430F6xxx y las familias SimpleLink MSP432 de MCU, permiten que el usuario personalice el BSL programado de fábrica; sin embargo, la mayoría de los dispositivos tienen un BSL en la memoria de solo lectura (ROM) que no se puede cambiar. Para estos dispositivos, sería necesario utilizar una solución BSL alternativa, como un cargador de arranque de la memoria principal, para personalizar el proceso de carga de arranque.
PASO 2: Actualización del firmware de la aplicación con el BSL MSP
Una vez que se logra una comprensión básica del BSL, el siguiente paso es usar el BSL para comunicarse con un dispositivo o programarlo. Esto se puede hacer de varias maneras, que se describen a continuación.
Puente de comunicación: hardware de conexión del BSL con la PC
Para conectar el BSL del MCU MSP430 a una computadora personal (PC), puede ser necesario hardware adicional. Las siguientes son algunas opciones para conectar el BSL de MSP430 a una PC.
El programador MSP430-BSL (apodado el “cohete BSL”) es un puente entre el BSL de MSP430 y una conexión USB a una PC. El cohete MSP430-BSL es una colaboración entre Olimex LTD y Texas Instruments. La placa de circuito impreso (PCB) y el firmware del programador MSP430-BSL son de código abierto y admiten la comunicación UART, I2C y SPI.
El programador y depurador de procesador de señal mixta y transistor de efecto de campo (MSP-FET) también admiten interfaces BSL para la programación.
El programador de producción MSP-GANG puede programar hasta ocho MCU al mismo tiempo. También admite la interfaz BSL UART.
También se puede utilizar un diseño USB en una placa personalizada para acceder al BSL USB de los dispositivos MCU MSP430 que contienen un periférico USB. También se proporciona una interfaz gráfica de usuario (GUI) basada en Python para ayudar con las actualizaciones de firmware del BSL USB en dispositivos MSP430. Este software es parte del paquete del desarrollador de USB que aparece en el vínculo a continuación.
BSL Scripter: software de PC complementario
BSL Scripter es un programa de línea de comandos que se utiliza para comunicarse con el BSL del MCU MSP430 en una PC con Windows®, Linux® o macOS® X a través de un puente de comunicación. Los puentes de comunicación compatibles incluyen el programador MSP-BSL (“cohete BSL”), MSP-FET y BSL USB en ciertos dispositivos MSP430 basados en flash. Consulte la Guía del usuario de BSL Scripter para obtener más información sobre cómo usar este programa. La descarga del software BSL Scripter incluye BSLDEMO2 (una herramienta de línea de comandos obsoleta para BSL) para dispositivos más antiguos que no son compatibles con BSL Scripter. BSL Scripter está disponible de forma independiente e integrado en UniFlash v4.6.0 o superior.
Soluciones de programación integradas
Algunas aplicaciones no tienen acceso a una PC para programar un MCU MSP430 mediante un BSL. Se puede escribir fácilmente un controlador BSL de host para utilizar el protocolo BSL de MSP430 a través de UART, I2C o USB. Las siguientes notas sobre la aplicación demuestran esta capacidad. Las soluciones personalizadas para el host integrado elegido deben seguir el protocolo BSL que figura en el paso 1 de las guías del usuario de BSL.
El cargador de arranque MSP430™ con MCU SimpleLink™ es la nota sobre la aplicación que proporciona el software para tener un host integrado para el cargador de arranque MSP430.
El cargador de arranque MSP430™ con host de Linux integrado Sitara™ es la nota sobre la aplicación que proporciona el software para tener un host integrado para el cargador de arranque MSP430 basado en UART. El proyecto se basa en el host implementado mediante el host de Linux integrado Sitara.
Las actualizaciones de firmware de MSP430™ a través de I2C con Linux® es la nota sobre la aplicación que proporciona el software para un host integrado en el cargador de arranque MSP430 basado en I2C. El proyecto se basa en el host implementado mediante BeagleBone Black de TI, que ejecuta la distribución de Debian Linux en stock.
PASO 3: Personalización del BSL de MSP
Algunas aplicaciones requieren un cargador de arranque personalizado para cumplir con los requisitos no proporcionados por el BSL. Además, algunos MCU MSP, como MSP430F5xxx, MSP430F6xxx y las familias SimpleLink MSP432 de MCU, permiten que el usuario personalice el BSL programado de fábrica; sin embargo, la mayoría de los dispositivos tienen un BSL en la memoria de solo lectura (ROM) que no se puede cambiar.
Documentación de BSL personalizada
En las familias de MCU MSP430F5xxx y MSP430F6xxx basadas en flash, los desarrolladores pueden cambiar el código fuente del BSL para agregar diferentes interfaces periféricas, secuencias de entrada personalizadas u otras características personalizadas al BSL estándar. Cuando personalice el BSL, use el código fuente del BSL que aparece en el vínculo a continuación como referencia. El código fuente del BSL y todas las imágenes de firmware del BSL disponibles están incluidos en el paquete de software BSL430-SOURCE. El código fuente del BSL solo está disponible para la versión más reciente de BSL.
El código fuente para MCU MSP432E4 está disponible en el kit de desarrollo de software (SDK) SimpleLink MSP432E4.
BSL de la memoria principal
Los MCU MSP430 tienen dos BSL de memoria principal diferentes (del lado de la aplicación), que se pueden personalizar según las necesidades de una aplicación. Estas soluciones no reemplazan al BSL que se incluye con el dispositivo, sino que están encima del software de la aplicación para personalizar un BSL.
Para los MCU MSP430 basados en flash, se ofrece MSPBOOT:
Para los MCU MSP430 basados en una memoria no volátil universal (FRAM), se ofrece MSPFRBOOT con una opción de actualización inalámbrica:
Actualizaciones de firmware seguras
Algunas aplicaciones necesitan actualizaciones de firmware seguras. Para estas situaciones, las siguientes opciones están disponibles.
El cargador de arranque cifrado (CryptoBSL) es un cargador de arranque personalizado que se desarrolló e implementó en los microcontroladores FRAM MSP430FR59xx y MSP430FR69xx. Este cargador de arranque usa funciones criptográficas para habilitar una mayor seguridad en las actualizaciones de firmware en campo.