IAR MSP430编译报错说明

内容发布更新时间 : 2025/7/16 12:38:49星期一 下面是文章的全部内容请认真阅读。

IAR MSP430编译报错说明

无编号警告类型:

1、Sat Jun 23, 2012 17:41:05: The stack pointer for stack 'Stack' (currently Memory:0xF5336) is 原因:http://blog.sina.com.cn/s/blog_4c0cb1c0010153l9.html

IAR相关设置:Tools->Option->Stack->Warn when stack pointer is out of bounds.

2、无法查看结构体/共同体/联合体 变量[Syntax error, unexpected $end, expecting COLON2] column 1 struct drpoint {

uint16 x; uint16 y; }drpoint[10]; 改成: struct {

uint16 x; uint16 y; }drpoint[10]; 参考:

http://tech.groups.yahoo.com/group/lpc2000/messages/34213?threaded=1&m=e&var=1&tidx=1

UESTC 2012.12

IAR 各版本BUG错误修正历史:

ftp://efo-6.ip.peterstar.net/pub/efo-ftp/TMP/pub/atmel/_AVR32_MCUs_32bit/Compilers/IAR/IAR_2.20/Install software/EWAVR32-KS-CD-220A/doc/common/doc/CorrectedProblems.pdf 有编号警告类型:

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

\the moment of placement the available memory ranges were \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];

这两种方法其实效果是一致的,定义完数组之后,调用的部分就是需要用指针来调用数组里面的数值了。

bytes needed. The

pro××em occurred while processing the segment placement command the ××aila××e

<
>>灞曞紑鍏ㄦ枃<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4 ceshi