- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用 IAR 时遇到的一些 Error 、Waring
/sendoc/blog
作为菜虫,在使用 IAR 的时候编写 CC2430 、、Z-Stack2006 程序会遇到如下一些
错误,当然随着学习的深入,我会持续更新。
1
Q:
Error[e16]: Segment XDATA_Z (size: 0x19a1 align: 0) is too long for segment
definition. At least 0xe4c more bytes
needed. The problem occurred while processing the segment placement
command
-Z(XDATA)XDATA_N,XDATA_Z,XDATA_I=_XDATA_START-_XDATA_END,
where at the moment of
placement the available memory ranges were XDATA:f1ff-fd53
Reserved ranges relevant to this placement:
XDATA:f000-f1fe XSTACK
XDATA:f1ff-fd53 XDATA_N
BIT:0-7 BREG
BIT:80-97 SFR_AN
BIT:a8-af SFR_AN
BIT:b8-c7 SFR_AN
BIT:d8-df SFR_AN
BIT:e8-ef SFR_AN
A :
其实这个问题并不是你的程序本身有问题,主要是因为你编写的程序太大了,超出
了芯片本身的定义。今天在群里学习了一招,就是将数组定义到 code 里,我们看
一下例子。我们定义一个 5100 个元素的数组,有以下两种方法:
mermaid 提出的方法是:
typedef unsigned char const __code INT8U;
extern INT8U shuzi[5100];
文晶提出的方法是
INT8U code shuzi[5100];
这两种方法其实效果是一致的,定义完数组之后,调用的部分就是需要用指针来调
用数组里面的数值了。
2
Q:
烧写程序时无法跳入断点
为什么我每次烧程序都出现: The stack plug-in failed to set a breakpoint on main.
The Stack window will not be able to display stack contents. (You can change this
setting in the ToolOptions dialog box.) 的警告。但是程序能烧进去, 只是不能调试。
A :
确认设置没有问题(和好用的工程相比)
这是设置不对 ,请找下面顺序修改 :
iar-options-linker-output-format;
选择 Debug information for c-SPY 选项
3
Q:
/*********************************************************************
*
*/
错误提示:
Fatal Error[Cp001]: Copy protecTIon check, No valid license found for this
product [20]
A :
可以将 IAR 全部安装上,但是在编译文件时却会报这个错,原因是安装的时候
没有把注册机的 0x 字串的小写字母改为大写字母。
/*********************************************************************
*
*/
4
Q:
“Error[e16]: Segment CSTACK (size: 0x50 align: 0x1) is too long for segment
definition. At least 0x50 more bytes needed. The problem occur
文档评论(0)