微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > OAD镜像大小困惑

OAD镜像大小困惑

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

想问一下以下代码中: 红色标记数值的大小 是根据自己程序大小设置的吗?

如果是,该怎么设置,表示不是很明白。我不做修改,直接按照OAD手册设置,程序更新100%后,单片机死机。

希望论坛的 坛友们指导下。

谢谢啦。

#if !defined OAD_IMG_A_PAGE
#define OAD_IMG_A_PAGE 1
#define OAD_IMG_A_AREA 62
#endif

#if !defined OAD_IMG_B_PAGE
// Image-A/B can be very differently sized areas when implementing BIM vice OAD boot loader.
#if defined FEATURE_OAD_BIM
#define OAD_IMG_B_PAGE 8
#else
#define OAD_IMG_B_PAGE 63
#endif
#define OAD_IMG_B_AREA (124 - OAD_IMG_A_AREA)
#endif

Hui,

可以自己设置。

设置完这个之后,还得同时修改xcl文件。

这个是当你imageB比较大的时候,用较小的imageA只存放OAD profile时可以用。

你可以参考这个代码:

http://processors.wiki.ti.com/index.php/BLE_Large_Image_OAD

Yan,

    你好,感谢你的解答,我打开 SimpleBLEPeripheral  工程 分别 修改    Img A        OAD_IMAGE_VERSION  0x0002 ,Img B  OAD_IMAGE_VERSION  0x0005

但是更新固件时,为何 版本号不变,如下图:  是还需要修改其他地方吗?

Hui,

你有在工程options 里面的preprocessor 中定义了 OAD_IMAGE_VERSION 吗?

Yan,

   你好,问题已解决。

   我还有个疑惑,如下:

   编译自己的程序得到

111 755 bytes of CODE memory (+ 15 221 range fill )
          34 bytes of DATA memory (+ 94 absolute )
    6 418 bytes of XDATA memory
       194 bytes of IDATA memory
            8 bits of BIT memory
       845 bytes of CONST memory

而生成的  .bin文件大小 是124K

     生成的 HEX 文件大小是 349K

他们有联系吗? 无限升级里限制的 程序大小是多少? 怎么查看自己 生成的  ImgA 和Img B是否符合?

希望得到解答,谢谢!

Hui,

bin 文件的大小才是真正的会占用flash空间的大小。

hex文件的大小和实际占用flash的大小无关。

你只要看你的.map文件就可以判断生成的固件是否符合了。

发现我生成的 镜像版本号,在添加 OAD_IMAGE_VERSION 声明后,生成的版本查看 都是 1,不加OAD_IMAGE_VERSION声明,生成的版本查看都是0,

不知道怎么搞的,求指导。

我之前都试过, 没有效果呢!

--------------------

气相色谱仪

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

网站地图

Top