本帖最后由 ARMVSAVR 于 2014-7-21 11:52 编辑
用ATMEGA128无意间发现一个问题!
用PF7口作为输入,低有效,当按键按下,直到按键松开,此次按键才有效!我在主函数里面定义全局变量a[100],当然还定义了其他的变量!
问题:当我定义了这个变量,这个语句:(PINF&0x80)==0x80)再也不能执行!当我把这个变量a[100]定义取消!这个语句:(PINF&0x80)==0x80)可以执行!
不知道大家有没有遇到过!我用128的PF口前几年也遇到过类似问题!
原来是定义的数组超出了内部内存的空间:哪位大侠告诉我ICCAVR如何将常量数组放置到FLASH!
我的结构加了const,但是数据还是分配在内存里面!
const unsigned char dian[] = // ASCII
{
0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00, // -:-
0x00,0x00,0x00,0x06,0x06,0x00,0x00,0x00,
};
PS:问题解决!
源自AMOBBS网友:定义程const 然后在iccavr里设置勾选“Treat‘const’as‘——flash’”
ICCAVR图片.jpg (52.33 KB, 下载次数: 0)
下载附件
2014-7-21 11:52 上传
一周热门 更多>