ZHCAAO2D February   2015  – August 2021 CC1310 , CC1352R , CC2538 , CC2620 , CC2630 , CC2640 , CC2640R2F , CC2640R2F-Q1 , CC2642R , CC2642R-Q1 , CC2650 , CC2650MODA , CC2652R , CC2652R7 , CC2652RB , CC2652RSIP

 

  1.   商标
  2. 1引言
  3. 2ROM 引导加载程序
    1. 2.1 配置引导加载程序
      1. 2.1.1 CC2538
      2. 2.1.2 CC26x0
    2. 2.2 CC26x2
    3. 2.3 通信协议
      1. 2.3.1 ACK/NACK
    4. 2.4 接口配置
      1. 2.4.1 硬件引脚
      2. 2.4.2 UART 配置
      3. 2.4.3 建立通信
      4. 2.4.4 状态命令
  4. 3Serial Bootloader Library (SBL)
    1. 3.1 SBL 返回值
    2. 3.2 SBL API
      1. 3.2.1 器件特定函数
  5. 4示例项目
    1. 4.1 硬件设置
      1. 4.1.1 SmartRF06EB 虚拟 COM 端口
        1. 4.1.1.1 外部串行接口
      2. 4.1.2 LaunchPad 虚拟 COM 端口
      3. 4.1.3 引导加载程序后门
    2. 4.2 软件设置
      1. 4.2.1 器件类型
      2. 4.2.2 波特率
    3. 4.3 程序流程
      1. 4.3.1 枚举 COM 端口
      2. 4.3.2 创建器件
      3. 4.3.3 连接
      4. 4.3.4 擦除闪存范围
      5. 4.3.5 写入闪存范围
      6. 4.3.6 计算 CRC32
      7. 4.3.7 复位
  6. 5参考文献
  7. 6修订历史记录

器件特定函数

ROM 引导加载程序中有一些命令在 CC2538、CC26x0 和 CC26x2 之间不同,这意味着这些器件的 SBL 函数也有一些不同;表 3-3 中显示了这些差异。

所选硬件不支持的 SBL 函数会返回常量 SBL_UNSUPPORTED_FUNCTION,而不执行任何操作。

表 3-3 器件特定 SBL 函数
SBL 函数名称CC2538CC26x0CC26x2说明
cmdDownloadCrc不支持不支持支持
(CMD_DOWNLOAD_CRC)
CC2538 和 CC26x0 引导加载程序中未实现。
eraseFlashBank()不支持支持
(CMD_BANK_ERASE)
支持
(CMD_BANK_ERASE)
这将擦除 CC26x0 和 CC26x2 所有未受保护的闪存扇区;对于 CC2538,可通过对整个闪存存储器使用 eraseFlashRange 来实现。
setCCFG不支持支持
(CMD_SET_CCFG)
支持
(CMD_SET_CCFG)
CC2538 引导加载程序中未实现。
setXosc支持
(CMD_SET_XOSC)
不支持不支持CC26x0 和 CC26x2 引导加载程序中未实现。
运行支持
(CMD_RUN)
不支持不支持CC26x0 和 CC26x2 引导加载程序中未实现。