TI中文支持网
TI专业的中文技术问题搜集分享网站

CC13X2 OAD问题咨询

您好:这几天开始学习OAD这部分,有几个地方我没看明白,麻烦帮我解答一下:

1:文档资料里描述的off-chip是什么意思?off-chip只针对target端吗?这部分说的placing images in internal and external flash when using off-chip OAD内外flash是怎么回事?可不可只用内部flash,如果容量足够。

2:Distributor端的external flash是必须的吗?

3:例程里,target端需要BIM+PAPP+UAPP同时load到芯片里,但PAPP和UAPP里都有各自的非OAD app(如ADC),这是个什么原理呢

谢谢!

Viki Shi:

1、onchip是指用芯片上集成的flash进行OAD,offchip是外接flash进行OAD[适用于程序比较大的应用],具体用哪个看你的应用要求
2、不是,看上面解释
3、BIM是负责在image下载完后进行loading。BIM在设备重置时执行,并确定是否需要固件更新,所以必不可少,而persistent APP是以防万一,如果更新image失败,BIM还可以跳转到persistent app,而不至于无法启动

具体的规则及原理建议看一下OAD指导文档:dev.ti.com/…/ble5-oad-index-cc13x2_26x2.html

user4461669:

回复 Viki Shi:

您好,谢谢解答,还有问题继续请教:

从资料里了解,OAD的server端,需要将rfWsnConcentratorOadServer APP编译并load,然后加载client端的image并传输。OAD的client端,需用uniflash同时烧写BIM、UAPP、PAPP,那么问题(下列提到的资料来源 SimpleLink™ CC13x2 / CC26x2 SDK Proprietary RF User's Guide3.10.00)

1:Bin文件问题,三个文件必须是分离的还是可以合成一个bin文件烧写?这三个文件是否每次需要OAD?还是只需要更新其中一个

2:OAD Image Tool是必须下载python应用软件来操作?是不是在SDK里直接操作?running the tool 里有简单介绍,但没有具体方法,例程里没有相关post build设置

3:例程的Example usage里image加载这部分是在什么地方输入运行的?格式要求是什么?

The UART terminal must be closed to free the COM port before the script is run. Then the python script can be run using the following command:

python <SDK>/tools/easylink/oad/oad_write_bin.py /dev/ttyS28 <SDK_DIR>/examples/rtos/CC1352R1_LAUNCHXL/easylink/hexfiles/offChipOad/ccs/rfWsnNodeExtFlashOadClient_CC1352R1_LAUNCHXL_app

Viki Shi:

回复 user4461669:

1、可以合并,也可以分开烧录。更新的时候可以只更新Uapp
2、一般使用的话不需要,需要改动的需要python,这部分介绍确实比较少
3、方便发一下原文链接吗?我去看一下

user4461669:

回复 Viki Shi:

您好wiki:

1:OAD功能的板子,首次需要uniflash烧写固件,此固件是可以将BIM,UAPP,PAPP三个HEX文件直接烧进去,也可以先将三个hex文件合并成单一hex再烧进去吧?我这边测试似乎没问题,不知道有没有风险。

2:同一,三个hex文件分别转成bin文件后,用uniflash烧写时候,load addr怎么填写?下载老是不成功

3:如果做成release版本,是否只需要将BIM的build设置改过来即可?UAPP   PAPP仍然采用dubug配置?

4:rfwsnnodeintflashOadClientP/UApp例程说明文档里,关于post build生成bin文件的命令是否有误?参数格式顺序似乎有问题,有没有验证过?

谢谢。

Viki Shi:

回复 user4461669:

1、一起烧没问题
2、直接烧录hex文件,只有bin文件才需要start address
3、可以
4、在Build->Steps->Post-build steps下添加:
"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"
然后Rebuild All就可以在Debug/Release下生成.bin文件了

亲测有效

user4461669:

回复 Viki Shi:

Viki您好:

我这边尝试在现有的非OAD功能的项目(如rfEasyLinkRx例程)上添加OAD功能,按照simplelik academy/bluetooth5/ble enhanced OAD里add OAD to multi role的描述,将rfWsnNodeIntFlashOadClientUApp例程里的.cfg和.cmd文件内容复制粘贴到rfeasylinkrx例程的响应文件,并设置rfeasylinkrx.syscfg里NVS部分、easylink设置部分一致,将academy里要求的文件也拷贝过来,但编译不能通过,且无法生成ti_easylik_oad_config.h。

请问这个地方怎么设置?有没有详细的针对easylink的OAD工程创建文档?

谢谢

赞(0)
未经允许不得转载:TI中文支持网 » CC13X2 OAD问题咨询
分享到: 更多 (0)