MSP430™ 微控制器 (MCU) 上的引导加载程序 (BSL) 允许用户在原型设计、最终量产和使用期间与 MSP MCU 中的嵌入式存储器进行通信。通信时使用 UART、I2C、SPI 和 USB 等标准接口。可编程存储器(闪存/FRAM)和数据存储器 (RAM) 均可按要求予以修改。
以下是在 MSP 米6体育平台手机版_好二三四系列中理解并有效使用 MSPBSL 所需的步骤。有关您器件上的 BSL 支持哪些功能或与 BSL 通信需要哪些接口方法的最新信息,请参阅“表1.BSL 特性概述”,该表包含在第 1 步中链接到的 BSL 用户指南中。
第 1 步:了解 MSP 引导加载程序 (BSL)
某些应用需要使用定制引导加载程序来满足所提供的 BSL 之外的要求。此外,某些 MSP MCU(如 MSP430F5xxx、MSP430F6xxx 和 SimpleLink MSP432 MCU 系列)允许用户定制工厂编程的 BSL;不过,大多数器件的 ROM 中都具有无法更改的 BSL。对于这些器件,需要使用替代 BSL 解决方案(如主存储器引导加载程序)来定制引导加载过程
第 2 步:使用 MSP BSL 更新应用固件
在基本了解 BSL 之后,您可能希望使用 BSL 与器件进行通信和/或对其进行编程。可以通过下面概述的多种方法来实现这一目的。
通信网桥 – 用于将 BSL 连接到 PC 的硬件
为了将 MSP430 MCU 的 BSL 连接到 PC,可能需要额外的硬件。以下是一些将 MSP430 BSL 连接到 PC 的选项。
MSP430-BSL 编程器(“BSL Rocket”)是 MSP430 BSL 与 PC 的 USB 连接之间的网桥。MSP430-BSL Rocket 是 Olimex LTD 与米6体育平台手机版_好二三四 (TI) 之间的合作项目。MSP430-BSL 编程器的 PCB 和固件是开源的,它支持 UART、I2C 和 SPI 通信。
MSP-FET 编程器和调试器还支持用于编程的 BSL 接口。
MSP-GANG 生产编程器可以同时对多达八个 MCU 进行编程,此外还支持 UART BSL 接口。
定制板上的 USB 设计也可用于访问包含 USB 外设的 MSP430 MCU 器件上的 USB BSL。还提供了基于 Python 的 GUI,可帮助在 MSP430 器件上进行 USB BSL 固件升级。该软件是下面链接的 USB 开发人员软件包的一部分。
BSL Scripter – PC 端软件
BSL Scripter 是一个命令行程序,用于通过通信网桥在运行 Windows®、Linux® 和 macOS® X 操作系统的 PC 上与 MSP430 MCU BSL 进行通信。支持的通信网桥包括 MSP-BSL 编程器(“BSL Rocket”)、MSP-FET 和 USB BSL(在某些基于 MSP430 闪存的器件上)。有关如何使用该程序的更多信息,请参阅 BSL Scripter 用户指南。在 BSL Scripter 软件下载中,还包含适用于 BSL Scripter 不支持的较旧器件的 BSLDEMO2(弃用的 BSL 命令行工具)。BSLScipter 可单独提供,也可在 UniFlash v4.6.0 或后续版本中提供。
嵌入式编程解决方案
某些应用无法访问 PC 来通过 BSL 对 MSP430 MCU 进行编程。可以轻松编写主机 BSL 驱动程序,以便在 UART、I2C 或 USB 上使用 MSP430 BSL 协议。以下应用手册演示了该功能。所选嵌入式主机的定制解决方案应遵循第 1 步中 BSL 用户指南中的 BSL 协议。
“适用于 SimpleLink™ MCU 的 MSP430™ 引导加载程序”应用手册介绍了为 MSP430 引导加载程序提供嵌入式主机的软件。
“适用于 Sitara™ 嵌入式 Linux 主机的 MSP430™ 引导加载程序”应用手册介绍了为基于 UART 的 MSP430 引导加载程序提供嵌入式主机的软件。该项目基于即将使用 Sitara 嵌入式 Linux 主机实现的主机。
使用 Linux® 通过 I2C 实现 MSP430™ 固件更新应用手册介绍了为基于 I2C 的 MSP430 引导加载程序提供嵌入式主机的软件。该项目基于即将使用 TI BeagleBone Black(运行现有 Debian Linux 版本)实现的主机。
第 3 步:自定义 MSP BSL
某些应用需要使用定制引导加载程序来满足所提供的 BSL 之外的要求。此外,某些 MSP MCU(如 MSP430F5xxx、MSP430F6xxx 和 SimpleLink MSP432 MCU 系列)允许用户定制工厂编程的 BSL;不过,大多数器件的 ROM 中都具有无法更改的 BSL。
定制 BSL 文档
在基于闪存的 MSP430F5xxx 和 MSP430F6xxx MCU 上,开发人员可以更改 BSL 源代码,从而向标准 BSL 添加不同的外设接口、定制进入序列或其他定制特性。在定制 BSL 时,请使用下面链接的 BSL 源代码作为参考。BSL430-SOURCE 软件包中包含所有可用的 BSL 固件映像和 BSL 源代码。BSL 源代码仅适用于最新的 BSL 版本。
SimpleLink MSP432E4 SDK 中提供了适用于 MSP432E4 MCU 的源代码
主存储器 BSL
MSP430 MCU 具有两个不同的主存储器(应用程序端)BSL,可根据应用需求对其进行定制。这些解决方案不会取代设备附带的 BSL,而是位于应用软件之上,以定制 BSL。
对于基于闪存的 MSP430 MCU,提供了 MSPBOOT:
对于基于 FRAM 的 MSP430 MCU,提供了包含无线更新选项的 MSPFRBOOT:
安全固件更新
某些应用需要安全固件更新。针对这些情况提供了以下内容。
Crypto-Bootloader (CryptoBSL) 是在 MSP430FR59xx 和 MSP430FR69xx FRAM 微控制器上开发和实现的定制引导加载程序。该引导加载程序使用加密功能来增强现场固件更新的安全性。