微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 在IAR 环境下CC2530的bootloader设计问题

在IAR 环境下CC2530的bootloader设计问题

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

尊敬的TI工作人员您好!

我设计一个项目需要使用到程序的在线更新,遇到问题!使用的是IAR IDE 有三个问题请教

1、如何确定设置APP 程序烧写的起始地址, 

  我是 修改文件lnk51ew_CC2530F256_banked.xcl 中的

-D_NEAR_CODE_START=0x0800  //将App起始地址设置为0x800 , 但是 0x0000---0x0060 还是被写进了程序。

2、如何在用IAR环境下用CCDEBUGER 下载APP 不擦除bootloader

  我按照SBL 文档所述,设置project-->options-->Texas Instruments-->Download  选择 Retain unchanged pages , 或者 Retain flash pages 都不能保存住boot 的程序

 3、如何重新映射APP的中断向量表。

第三个问题,我看到有的文章中说修改boot 程序中的 interrupt_stubs.s51文件

OFFSET EQU 0x800。这样做,是不是跳转到了APP的程序空间中,会不会bootloader 和APP 的中断程序相互影响

在Serial Boot Loader For CC253x SoC.pdf 中 figure 1 中描述的 Re-localed  ISR's to 0x2000 ---0x2089是如何实现的。

你准备使用什么通信接口进行BootLoader呢?串口吗?

你这里说的应该是OTA吧,通过无线下载程序。


OFFSET EQU 0x800

COMMON INTVEC(1)
;
; interrupt vectors in boot code simply jump to the user's LJMP
; instruction based at the known offset of 0x800 (flash page 1).

根据描述,这个是可以跳转到用户程序的。

这个

http://software-dl.ti.com/download/lprf/Y5@_WTNJ9J49N5DQTNBDH38GVEKSTCSJ/Z-Stack_Home_1.2.2a.exe

你下载了吧?

安装后C:\Texas Instruments\Z-Stack Home 1.2.2a.44539\Documents

有相关的文档。我没看太懂,你看看能否懂。

感谢gaoyang9992006的回答,问题还是解决不了。盼望有TI工作人员能给予指点,谢谢! 

顶一下,在线等

我之前做过在线升级。给你几个思路,希望可以帮助你。

1、下面节点的在线升级。CC2530是需要外扩flash的,自身的flash压根不够用。

2、将CC2530片内flash分区,TI好像有个文档介绍了flash的地址及分区。你只要将代码区分为两个部分,一个bootloader 。一个APP code。

3、自己写一个bootloader。这个bootloader的功能就是拷贝功能。将代码从外扩flash拷贝到片内flash。

4、在.xcl配置文件里面要修改相应的地址。

感谢xiaohui bu 的解答,我现在已经可以把 bootloader  和 APP code 分别下载到cc2530的flash 中,也可以 运行了,我也是准备弄一个SPI flash 做升级用。再次感谢xiaohui bu 

不客气。大家相互交流学习!

你好,请问你是如何解决的,我现在也是程序单步可以跳转到0x2000地址,但实际没有正常执行。bootloader中首次收到SBL写命令后将代码写入2048地址,这里是不是有问题?因为boot文件大小是大于2048的

http://processors.wiki.ti.com/index.php/CC253x_Serial_Boot_Loader. 按照这篇文档一步步做就可以了

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

网站地图

Top