51单片机访问片内数据存储器某单元的内容用c语言怎么写???

如题:注意了是片内,不是片外。用C写不要汇编
2024-11-09 13:33:14
推荐回答(3个)
回答(1):

方法1:
char data *p; //定义一个指向片内RAM地址的指针
p = 0x30; //片内RAM地址为0x30
*p = 0x12; //向0x30内写入立即数0x12

方法2:
#include
char x;

x = DBYTE[0x30]; //将片内RANM地址0x30的内容赋给变量x
DBYTE[0x30] = 0x12; //向0x30内写入立即数0x12

方法3:采用 _at_ 直接声明变量所处地址,但该变量必须是全局变量。
char data x _at_ 0x30 ; //x为char型全局变量,地址位于data区地址0x30
。。。。。

x = 0x12; //向0x30内写入立即数0x12

回答(2):


unsigned char xdata *p=0x0650;
unsigned char mid;

读: mid=*p;
写:*p=mid;

回答(3):

*地址