如何将变量像51单片机一样存在code里,请高手赐教~~~

2020-02-08 09:16发布

51单片机可以定义 unsigned char code a[5]={2,3,5,6,8}; 把数组a的内容存放在code里。

PIC单片机编程的时候怎么能用类似的方法存储在code里?

请高手赐教!!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
surf_131
1楼-- · 2020-02-09 05:18
wctmdgcd 发表于 2012-4-25 20:30
LZ的标题表达有问题。。。

变量是不能存CODE中的

是的,pic是哈佛结构,变量不是程序,而是数据。

一般可以将常数(如字模等)保存在程序空间,用rom指示,然后必须用指针访问。
kakarotto
2楼-- · 2020-02-09 08:52
 精彩回答 2  元偷偷看……
surf_131
3楼-- · 2020-02-09 11:42
kakarotto 发表于 2012-4-25 22:42
pic定义常量的时候都用的const,没发现必须用指针访问的问题啊

默认情况下,MPLAB C18 将用户变量存入数据存储器。 rom 限定符用于指示将对象分
配到程序存储器中:
rom int array_of_ints_in_rom[] =
{ 0, 1, 2, 3, 4, 5 };
rom int * q = &array_of_ints_in_rom[0];
在上面的示例中, array_of_ints_in_rom 表示程序存储器中的整型数组。 q 是一
个指针,可用于遍历数组中的元素。

一周热门 更多>