上述是使用Visual Studio 2015打开swra466b\sblAppEx_1_03_00_00\bin|\sbl_lib工程:
可以找到eraseFlashRange和eraseFlashBank函数,但是全局搜索整个解决方案,未找到这两个函数在何处调用,请教下具体怎么实现呢?
或者提供一个可扇区擦除的sbl_lib库,谢谢
Viki Shi:
扇区擦除直接用SBL连接芯片,然后发送COMMAND_SECTOR_ERASE (0x26 )即可
user4546979:
回复 Viki Shi:
sblAppEx打开后,第一步是选择升级的串口号,第二步是选择设备类型,完成这两步后,烧录自动开始。并没有给用户输入扇区擦除的CMD命令的地方,请问我的操作哪里有问题,或者说我使用的软件不对?
此问题直接影响能否使用串口升级,请TI工程师协助解决一下,谢谢
Viki Shi:
回复 user4546979:
我这边试居然直接自动退出了。。。等我找别人电脑试试。。。。
user4546979:
回复 Viki Shi:
CC2640R2F的SDK中的demo默认是关闭串口升级的,所以升级软件会闪退。
需要在C:\ti\simplelink_cc2640r2_sdk_1_40_00_45\source\ti\devices\cc26x0r2\startup_files路径下,修改ccfg.c文件,修改如下:
//#####################################// Bootloader settings//#####################################
#ifndef SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE//#define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0x00 // Disable ROM boot loader#define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0xC5 // Enable ROM boot loader#endif
#ifndef SET_CCFG_BL_CONFIG_BL_LEVEL#define SET_CCFG_BL_CONFIG_BL_LEVEL 0x0 // Active low to open boot loader backdoor//#define SET_CCFG_BL_CONFIG_BL_LEVEL 0x1 // Active high to open boot loader backdoor#endif
#ifndef SET_CCFG_BL_CONFIG_BL_PIN_NUMBER#define SET_CCFG_BL_CONFIG_BL_PIN_NUMBER 0x0C // DIO number for boot loader backdoor,也可以定义其他引脚#endif
#ifndef SET_CCFG_BL_CONFIG_BL_ENABLE#define SET_CCFG_BL_CONFIG_BL_ENABLE 0xC5 // Enabled boot loader backdoor//#define SET_CCFG_BL_CONFIG_BL_ENABLE 0xFF // Disabled boot loader backdoor#endif
重新编译后烧录,通过上电前拉低该片选引脚,使芯片进入boot,sblAppEx就可以正常使用了。可参考这个链接:
bbs.21ic.com/icview-2521560-1-1.html
升级过程供用户输入的只有两个地方,一个是选串口号,另一个是选择设备型号。
sblAppEx运行时是否会调用sbl_lib?sbl_lib的源码是开放的,猜测应该是修改哪个地方。
补充一下:一般的串口升级不会擦除全部的flash,麻烦TI工程师想想办法,感谢