ZHCAA00E June   2013  – January 2024

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
    1. 1.1 术语表
    2. 1.2 约定
  5. 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 闪存器件中的中断矢量
      4. 2.2.4 双映像支持
        1. 2.2.4.1 在双映像模式下跳转到应用程序
    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 I2C
          1. 2.4.1.1.1 超时检测
        2. 2.4.1.2 UART
        3. 2.4.1.3 SPI
        4. 2.4.1.4 CC110x
        5. 2.4.1.5 通信共享
      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 采用 I2C 的示例
          4. 2.4.2.1.4 采用 UART 或 CC110x 的示例
  6. 3定制 MSPBoot
    1. 3.1 预定义的定制
  7. 4构建 MSPBoot
    1. 4.1 启动新工程
      1. 4.1.1 创建新的 MSPBoot 工程
        1. 4.1.1.1 MSPBootProjectCreator.pl
        2. 4.1.1.2 在 CCS 中导入工程规范文件
        3. 4.1.1.3 修改生成的源代码
          1. 4.1.1.3.1 修改 MSPBoot Main.c
          2. 4.1.1.3.2 修改 TI_MSPBoot_Config.h
          3. 4.1.1.3.3 修改 TI_MSPBoot_CI_PHYDL_xxxx_xxx.c
          4. 4.1.1.3.4 修改 TI_MSPBoot_AppMgr.c
          5. 4.1.1.3.5 修改 Application Main.c
          6. 4.1.1.3.6 修改 TI_MSPBoot_Mgr_Vectors_xxxx.c
      2. 4.1.2 使用 MSPBoot 加载应用程序代码
        1. 4.1.2.1 转换应用程序输出映像
    2. 4.2 示例
      1. 4.2.1 LaunchPad 开发套件硬件
      2. 4.2.2 CC110x 硬件
      3. 4.2.3 构建目标工程
      4. 4.2.4 构建主机工程
      5. 4.2.5 运行示例
  8. 5参考文献
  9. 6修订历史记录

MSPBootProjectCreator.pl

MSPBootProjectCreator:生成开始在 CCS 中创建 MSPBoot 工程所需的所有引导加载程序和应用程序源文件。

注:

需要 Perl 解释器才能运行此脚本。如果需要,请访问 https://www.perl.org/ 来下载解释器。

Location:Utilities/Project Creator/MSPBootProjectCreator.pl

语法:

[] denotes an optional field
All numbers should be in hexadecimal format
MSPBootProjectCreator.pl 
                    [-help]
                    -hdr <header_file>
                    -lnk_file <lnk_msp430.cmd>
                    [-boot_size <size>]
                    [-shared_vectors <number>]
                    [-dual_image]
                    [-I2C]
                    [-UART]

其中(所有数字均为十六进制值):

  • -hdr <header_file> = 指定 MSP430 器件型号的头文件。需要与 MSPBootProjectCreator.pl 位于同一目录中。该文件的默认路径是 C:\ti\ccsvx\ccs_base\msp430\include,其中 ccsvx 是所使用的 ccs 版本。
  • -lnk_file <lnk_msp430.cmd> = 指定所用器件的默认链接器文件。需要与 MSPBootProjectCreator.pl 位于同一目录中。该文件的默认路径是 C:\ti\ccsvx\ccs_base\msp430\include,其中 ccsvx 是所使用的 ccs 版本。
  • -boot_size <size> = 可选参数。指定引导加载程序区域的大小。仅允许 0x400 的增量。如果省略,则会使用默认的引导加载程序大小。
  • -shared_vectors <number> = 可选参数。指定共享矢量的数量(十六进制)。如果未指定,则默认值为 3 个矢量。
  • -dual_image = 可选参数。指定所创建文件应启用双映像引导加载程序。如果未指定,则认定为单映像。
  • -I2C, -UART = 指定引导加载程序的通信接口。必须从二者中择一。
注:

使用生成器脚本时,不支持带有 CC110x 的 SPI,因为它具有许多特定于器件的依赖性。如果尝试开发的是 OAD 应用程序,请参阅随附软件包中提供的示例。

GUID-D1D2659E-0412-4691-8DEB-6DE101D82015-low.png图 4-1 示例命令

该脚本使用位于 Linker_Templates、Vector_Templates 和 ProjectSpec_Templates 文件夹中的模板。可以根据需要修改这些模板的内容,但在运行脚本时这些模板必不可少。该脚本还使用 Src 文件夹中的代码。同样,可以根据需要修改这些文件的内容,但是它们的名称和文件路径必须保持相同,才能确保脚本正常运行。