微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于SBL的一个问题

关于SBL的一个问题

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

学习ZStack-CC2530-2.5.1a下的SBL升级功能,发现一个奇怪的问题,官方文档中提到把GenericApp工程作为应用程序,GenericApp使用cc2530-sb.xcl这个链接文件,这个链接文件中有这么两句话:

-D_CODE_START=0x2000

-Z(CODE)INTVEC=_CODE_START

0x2000表示应用程序是从0x2000这个位置开始的,一切都是正确的,和官方说明都是一致的。

现在本人想自己建一个很简单的应用程序作为SBL应用程序,显然也得是从0x2000开始,但是为啥xcl文件里如果改成向上面一样从0x2000开始:

-D_CODE_START=0x2000

-Z(CODE)INTVEC=_CODE_START

就会报错,错误如下:

请问是为什么?按照错误提示我得改成0x0000开始才不会报错,但是这不符合官方的SBL设计(即应用程序得安排在0x2000开始)。

请问为什么?希望牛人指点?

木有人回答么?这个问题困扰我好几个星期了,都把TI的资料查个遍,也没找到相关解释。

所有材料解释都说INTVEC只能从0x0000开始。我就纳闷了,那GenericApp的xcl中INTVEC设置成0x2000开始怎么就能够链接成功?

请教牛人啊,困扰我多日啦!谢谢

你这个编译的错误编译哪个工程时出现的,boot还是app?

我是自己建一个简单的app,然后按照SBL的原理xcl肯定得像cc2530-sb.xcl一样设置INTVEC:

-D_CODE_START=0x2000

-Z(CODE)INTVEC=_CODE_START

根据例子,根据官方SBL的原理,如上得设置成0x2000,但是这个时候编译器报链接错误。

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

网站地图

Top