m64,flash内定义了个大数据表格,编译出错了,帮忙看一下
本帖最后由 liudingding 于 2015-4-15 14:00 编辑用M64,ICC7.22,flash内定义了两个数据表格,头一个1.2K,第二个1.5K,用的格式是:unsigned char const biaoge={......},编译出错,const放在开头或其他任何位置也不行,
提示:area "data" niot large enough
want size 2678
lo 1975 hi 4351 size 2377
这是什么原因?把第二个表格数据定义为6个(我随便定义的),编译正常,程序占用空间不到20% 编译器是avr-gcc的话,用PROGMEM修饰数组 area "data" niot large enough说得很清楚: 你现在的数组是放在“数据区“,而不是“代码区” 对,你要把程序编译到flash区域,一般前面还有修饰词的,不仅仅是const 我用的是ICC,前面还要有修饰词,该用什么? 我记得修饰词用flash,但是无论flash用在哪里都不行,替换const也不行 我平时都是用const unsigned char biaoge={....}这种方式,是不是有区别 有么有知道的?好几天了还没解决 加了修饰还需要设置ICC,把那个勾打上
加#program
页:
[1]