cc2630 cc26x0之内置bootloader

1. 如何进入

    cc26x0内部rom含有引导程序boot code与引导加载程序bootloader。boot code在上电时执行,并根据CCFG(自定义配置参数,后续介绍)相关配置决定进入bootloader 或者 flash中的用户 application。bootloader提供给了通过串口或spi接口访问内部flash的功能,比如擦除、编程及读取,主要应用与烧录软件,特别是生产时烧录,cc26x0 boot code启动流程如下图。

    


2. CCFG

    cc26x0 flash最后一页为设备参数配置区,其中需要用户配值的称为自定义配值Customer Configuration area,简称CCFG,能配置包含启动参数、镜像有效性、mac地址等参数,含有以下寄存器

    

2.1 镜像有效性 CCFG.IMAGE_VALID_CONF

    表示flash中是否具有有效镜像,在boot code启动流程中引用。该寄存器值为0表示有效。

2.2 bootloader 参数 CCFG.BL_CONFIG

    寄存器CCFG中的BL_CONFIG寄存器为boot code启动配值,页偏移地址为0xfd8,其字段内容如下。    

    BOOTLOADER_ENABLE

    使能时bootloader会处理串口命令,否则不理会。注意:不表示是否会进入bootloader

    BL_LEVEL、BL_PIN_NUMBER、BL_ENABLE

    当BL_ENABLE使能时,如果BL_PIN_NUMBER指定的io电平为 BL_LEVEL指定的值,那么即使 CCFG.IMAGE_VALID_CONF为有效值也会进入bootloader

扫描二维码关注公众号,回复: 3048687 查看本文章

2.3 CCFG的配置

    CCFG参数可在ccfg.c中配置,TI例程中默认配置是为了方便开发测试,最终产品应禁止BOOTLOADER_ENABLE与BL_ENABLE

3. 硬件接口

    硬件bootloader使用的硬件接口

    

4. 上位机程序

    TI提供了使用visual studio c++ Express 2010实现的源码库SBL与例程,实现了与bootloader串口通信的协议,下载地址:

    http://www.ti.com/lit/zip/swra466

    通信协议详细请参考《CC2538/CC26xx Serial Bootloader Interface》

    TI 的 flash 编程软件 SmartRF Flash Programmer 2 也支持通过串口与bootloader通信并编程cc26x0内部flash。

    重要声明:上位机的可行性作者本人并未去验证。


  参考文档

  《CC2538/CC26xx Serial Bootloader Interface》

  《CC13x0, CC26x0 SimpleLink™ Wireless MCU Technical Reference Manual

    转载请注明出处:https://blog.csdn.net/jason_lm/article/details/80874286

猜你喜欢

转载自blog.csdn.net/jason_lm/article/details/80874286
cc