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.   修订历史记录

存储器分配

MSPBoot 无法擦除或重新编程引导加载程序区域。此限制提供了更安全的实现方案,因为引导加载程序始终可访问,并可以通过强制使用引导加载程序模式来恢复 MSP430 MCU。

复位矢量是引导加载程序必不可少的组成部分,因为其可以强制 MSP430 MCU 始终跳转到引导加载程序的进入序列,所以不应将其擦除。由于复位矢量位于 16 位 FRAM 空间 (0xFFFE) 的顶端,因此引导加载程序代码位于相邻位置(请参阅Figure 5)。

Memory_Assignment.pngFigure 5. 存储器分配

中断矢量表也位于受保护的引导区域中。因为预计中断表的值将根据应用程序而变化,所以这意味着必须遵循一些特殊注意事项以允许应用程序中断。应用程序可以使用额外的 20 位空间(0x10000 及更高)。