在PIC中的const关键字,及rom关键字,#pragma rom
(2011-09-02 16:27:21)
标签:
杂谈 |
分类: 单片机知识 |
在MC18编译器中。
const char array[300]={0};
这样定义了一个超过bank最大值的变量,在编译时会产生错误.为什么?
const虽然指明了将变量array存储在了rom区,但是在MC18编译器中却因为变量的指向是RAM区,所以它默认的情况下还是将数据存储在了RAM区。即const单独无法实现将数据存放在ROM区的作用。而在MC18编译器说明中,如果要将数据放在ROM区,则要加上rom关键字。即如下定义
rom
const rom
或者采用如下方式:
#pragma rom udatasection
const
#pragma rom