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

存储器接口 (MI)

为了保护引导加载程序区域,MSP430 MCU 在逻辑上分为以下几个区段:

  • 应用程序区域:这是包含用户应用程序和已重定向矢量表的可写区段
  • 引导加载程序区域:这是包含用户应用程序和已重定向矢量表的不可写区段
  • 下载区域:这是包含用户应用程序和已重定向矢量表的可写区段(仅双映像模式)

每个区段的大小在项目链接器文件中定义。在 Code Composer Studio™IDE (CCS) 的示例项目中提供了显示不同存储器大小的示例。

存储器接口提供了一个 API 可用于对应用程序存储器区域进行编程和擦除以及保护引导加载程序区域。对于 FRAM 器件,这种存储器保护的实现方式如下:

  • FRAM 不需要擦除,但是当执行擦除以计算有效的 CRC 时,应用程序存储器将写入 0xFF。
  • 验证要擦除或编程的地址,以免引导加载程序区域发生意外损坏。
  • MPU 保护引导加载程序区域。用户可以根据应用程序修改 MPU 设置,但 TI 建议始终保护引导加载程序区域。
  • 仅在更新Section 2.2.3中所述的中断矢量时,才禁用 MPU 保护。

NOTE

MSPBoot 在执行更新时不允许对引导加载程序区域进行写入或擦除访问,但在执行应用程序时无法防止意外擦除。引导加载程序区域使用 MPU 进行硬件保护。