ZHCA999D October   2016  – March 2020 MSP430FR5969 , MSP430FR5969-SP , MSP430FR5994 , MSP430FR6989

 

  1.   MSP430FRBoot - 适用于 MSP430™ FRAM 大型存储器型号器件的主存储器引导加载程序和无线更新
    1.     商标
    2. 1 简介
      1. 1.1 术语表
      2. 1.2 约定
    3. 2 实现
      1. 2.1 主例程
      2. 2.2 应用程序管理器
        1. 2.2.1 引导加载程序和应用程序检测
          1. 2.2.1.1 强制使用引导加载程序模式
          2. 2.2.1.2 应用程序验证
          3. 2.2.1.3 跳转到应用程序
        2. 2.2.2 存储器分配
        3. 2.2.3 FRAM 器件中的中断矢量
      3. 2.3 存储器接口 (MI)
        1. 2.3.1 双映像支持
      4. 2.4 通信接口 (CI)
        1. 2.4.1 Physical-DataLink (PHY-DL)
          1. 2.4.1.1 UART
          2. 2.4.1.2 SPI
          3. 2.4.1.3 CC110x
          4. 2.4.1.4 通信共享
        2. 2.4.2 NWK-APP
          1. 2.4.2.1 基于 BSL 的协议
            1. 2.4.2.1.1 安全性
            2. 2.4.2.1.2 使用 CC110x 的基于 BSL 的协议
            3. 2.4.2.1.3 采用 UART 或 CC110x 的示例
    4. 3 定制 MSP430FRBoot
      1. 3.1 预定义的定制
    5. 4 构建 MSPBoot
      1. 4.1 LaunchPad™ 开发套件硬件
      2. 4.2 CC110x 硬件
      3. 4.3 软件
        1. 4.3.1 构建目标软件
        2. 4.3.2 转换应用程序输出映像
        3. 4.3.3 生成链接器文件
    6. 5 将 FRAM LaunchPad 开发套件用作主机的演示
      1. 5.1 硬件
      2. 5.2 构建主机项目
      3. 5.3 运行演示
    7. 6 将目标端示例项目移植到其他 MSP430FR 器件
    8. 7 参考文献
  2.   修订历史记录

应用程序验证

应用程序验证机制允许引导加载程序在执行应用程序之前对其进行验证。

  • 单映像模式(新应用程序将下载到应用程序区域)
    • 在此模式下可以使用两个选项(在 TI_MSPBoot_Config.h 中定义):
      • Level_1:检查复位向量是否为空 (0xFFFF)
      • Level_2:在应用程序区域中执行 CRC 校验,并使用 CRC 结果与位于应用程序存储器起始处的 CRC 签名进行比较
  • 双映像模式(新应用程序将下载到专用区域中,并在 CRC 校验后复制到应用程序区域中)

Figure 4 显示了双映像模式下验证过程的实现

Dual_Image_Application_Validation.gifFigure 4. 双映像应用程序验证

验证方法可以防止执行损坏的 应用程序 ,但是不能确保应用程序的完整性和功能,这是用户的责任。如果应用程序不具有预期的功能,则仍可以使用硬件进入序列来恢复 MSP430。

应用程序下载过程完成后,MSPBoot 在跳转到新应用程序之前将执行以下步骤:

  1. 验证下载区域中的新映像。
    1. 如果无效,则退出。复位会再次强制使用引导加载程序,并仅在原始映像有效时才执行应用程序。
    2. 有效则继续。
  2. 将应用区域程序替换为下载区域程序。
  3. 验证应用程序区域中的映像。
    1. 如果有效,则擦除下载区域。复位将执行应用程序,因为应用程序区域中的映像有效。
    2. 否则请退出。这是意外状态,但复位将再次验证两个映像。