Error[Cp001]: Copy protection check, No valid license found for this prod t [20]
原因:装置的时分没有把注册机的0x…..字串的小写字母改为大写字母。
Warning[Pe001]: last line of file ends without a newline F:emoTionIARPK晋级CC1110-8main.c
原因:在运用IAR常常常会弹出相似这样一个正告,其实只需在最终一行多加一个回车就不会再有这个正告了.
Error[e72]: Segment BANK_RELAYS must be defined in a segment definition option (-Z, -b or -P)
原因:这是用730B编译的过错,可能是由于相对于方针工程版别过高的,后改用720H,没有产生过错。
Error[Pe005]: could not open source file “stdio.h”
原因:头文件途径不对形成,改正的办法是在设置选项卡的C/C++ Compiler -> Preprocessor选项里,将$TOOLKIT_DIR$INCCLIB添到Incl? paths中。
Error[Pe005]:could not open source file “hal.h” C:UsersuserDesktop比如程序无线通信综合测验Librarycc2430HALsourcese
原因:先查看C:UsersuserDesktop比如程序无线通信综合测验Librarycc2430HALsource有无setTimer34Period.c这个文件,若有,则是由于IAR对中文途径支撑欠好的原因,把这个工程复制到英文途径下编译就不会产生过错。
Error[e16]: Segment CODE_C (size: 0x1869 align: 0) is too long for segment definition. At least 0x1259 more bytes needed.
原因:CODE不够了,在xcl文件中修正其巨细,0x28FF+0x1259=0x3B58,设置为-D_CODE_END=0x3B58
Error[e16]: Segment XDATA_Z (size: 0x1ea7 align: 0) is too long for segment definition. At least 0x2a7 more bytes
原因:在xcl文件里修正段巨细,-D_IXDATA_END=0xFD53
Error[e16]: Segment CSTACK (size: 0x50 align: 0x1) is too long for segment definition. At least 0x50 more bytes needed. The problem occurred while processing the segment placement command “-Z(DATA)CSTACK+_STACK_SIZE#”,
原因:此过错是所界说的全局变量和数组缓冲区等所占的RAM超出硬件支撑所造成的,size: 0x50为超出的巨细。只需削减不要的全局变量和尽量缩小数组缓冲区就可以了!
Error[e46]: Undefined external “OnBoard_SendPhoto::?relay” referred in hal_key ( C:Texas InstrumentsZStack-1.4.3-1.2.1ProjectszstackSamplesSi
原因:只要没有找到该函数的界说OnBoard_SendPhoto(),只要声明和运用。一般在链接时产生此过错。
Error[e89]:Too m h object code prod ed(more than 0x1000 bytes)for this package
原因:4K限制版,请运用非限制版的。
IAR常见过错请先从以下几个方面下手:
1、
2、
3、
4、
5、
6、
下面是我自己的弥补(不断更新哦)
1.
这个我的修正是 project options—->C/C++ Compiler—–>Optimizations(最优化)—–>size—–>High(maximum optimization)
也便是,将代码最大极限的优化,以节约空间。
嘿嘿,笔者新建工程时,保存的.c文件常常忘掉加后缀,增加进入工程时,体系无法辨认,这种初级过错写出来是自己提示自己的。
3. Warning[Pe069]: integer conversion resulted in truncation
#define SEG_A
#define SEG_B
#define SEG_C
#define SEG_D
#define SEG_E
#define SEG_F
#define SEG_G
#define SEG_H
原因:后来将SEG_A到SEG_H的值求出来之后,eg,~0x04改为0xFB.问题就处理,因该是以数组中核算量过杂乱。