微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 求助:BLE CC2540 Large Image OAD实验,无法使用SmartRF Flash Programmer下载问题

求助:BLE CC2540 Large Image OAD实验,无法使用SmartRF Flash Programmer下载问题

时间:10-02 整理:3721RD 点击:

hi

 

       现在BLE Large Image OAD实验中只能使用空中下载,用SmartRF Flash Programmer下载BIM 和 ImgA成功,然后使用Multitool工具OAD下载ImgB.bin成功,能正常工作。

      实验使用SmartRF Flash Programmer下载BIM 和 ImgA成功,然后Append and verify "ImgB.hex"失败,提示Error in HEX file verification 。   

  


简单做了下面三条测试:
1、SmartRF Flash Programmer升级到最新版本SmartRF Flash Programmer 1.12.7.0  失败,问题依然存在

2、三个文件BIM.hex、ImgA.hex和ImgB.hex,仅下载其中一个全部下载成功。

3、Linker configuration file 配置确定分别为cc254x_f256_imgA_small.xcl和cc254x_f256_imgB_Large.xcl;
     Texas Instruments -> Download配置确定仅勾选Retain unchanged pages

 

    参考文档:

    BLE Large Image OAD :http://processors.wiki.ti.com/index.php/BLE_Large_Image_OAD

    OAD_for_CC254x_V1.2.pdf :http://processors.wiki.ti.com/images/8/82/OAD_for_CC254x.pdf

            

   希望能得到你的帮助

兄弟,你这Image_A可以做到多小?

OAD Image B  157K

OAD Image A  90K

 

Hi alex,

imageA 和 imageB 在flash中存储的位置并非连续.

在flash中, 首先存放的是BIM, 接着是imageA的一部分, 接着是完整的imageB, 然后才是剩下的imageA.

所以我觉得flash programmer中如果你用append, 试图把imageB放到imageA之后, 肯能和imageB中定义的falsh起始地址有冲突之类, 造成错误.

你用IAR下载imageA, 接着下载imageB, 会有问题吗?

hi Yan,

     测试环境:

     IAR C/C++ Compiler for 8051  8.10.1 (8.10.1.40194)

     BLE STACK BLE-CC254x-1.3.1.EXE FOR CC2540

 

     使用IAR下载imageA, 接着下载imageB, 会有问题吗?

     测试一:

     完全不做修改,下载imageA成功,接着下载imageB,提示调试模式无法正常使用终止。

     测试二:(开启Linker->Output->Format->Debug information for C-SPY)

     下载imageA成功,接着下载imageB,能正常下载。

 

     以上测试,映像文件下载命令一样:Make & Restart Debugger,imageA 和imageB 设置项Texas Instruments -> Download配置确定仅勾选Retain unchanged pages

兄弟,不知道解决了没有,这两天也在也就如何减少OAD-only的Image_A的体积,你说的这个例子,我看了一下xcl文件,发现ImageBd的xcl文件有点奇怪,看如下定义:

[code]

-D_CODE_BEG=0x4030 // Last 10 pages of Bank 0.
-D_CODE_END=0x7FFF

-Z(CODE)CHECKSUM=0x3000-0x3001
-Z(CODE)IMAGE_HEADER=0x3002-0x300F
-Z(CODE)AES_HEADER=0x3010-0x302F

[/code]

这样程序能正常运行吗?,没想明白啊

hi rtos

       问题没解决,在Yan的回答中有说到,“所以我觉得flash programmer中如果你用append, 试图把imageB放到imageA之后, 肯能和imageB中定义的falsh起始地址有冲突之类, 造成错误”,让我感觉这个问题将异常棘手,所以先把这个问题搁置起来。

       最后希望后续有顺利实现这个功能的朋友,能帮忙解惑。

 

用SmartRF Flash Programmer下载BIM 和 ImgA成功,但是Multitool找不到设备。这是为什么?

1.广播是否正常

2.Multitool下载最新版本,然后使用纯天然例子编译烧录硬件试试。

采用纯天然代码,没有改动。直接编译和烧录!就是找不到!

ImageB实际大小110k,二编写生成的ImageB.bin缺有284k,这个怎么解决啊啊????????????????????

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top