我想问问51单片机如果使用c语言将特定的数值,比如0x01,存到30h单元里面应该怎么写?

这样子以后就可以调用了。以前都是汇编语言,第一次用c... 这样子以后就可以调用了。以前都是汇编语言,第一次用c 展开
 我来答
随遇而安云凡
2011-12-12 · TA获得超过2536个赞
知道小有建树答主
回答量:711
采纳率:0%
帮助的人:541万
展开全部
楼主:我准确地回答你的问题,你可以到KEIL或IAR里去仿真一下:

BYTE value _at_ 0x30;//表示value这个单字节变量指定的RAM地址为0x30。
value=0x01;//将0x01值赋值给30h

BYTE :是定义数据类型为单字节;
value:是一个变量;
所以"BYTE value _at_ 0x30"表示value 这个单字节变量指定的RAM地址为0x30
如果还有问题,请继续问,呵呵!
追问
谢谢,虽然没有去keil仿真,但是相信你。

而且,自己已经知道了可以用指针访问的方法。谢谢了~
6gps
2011-12-10 · TA获得超过209个赞
知道小有建树答主
回答量:178
采纳率:0%
帮助的人:112万
展开全部
#define wrt377 XBYTE[0X8000]

void key() /*消抖*/
{
unsigned char xdata j,wrt377v; wrt377v = wrt377v+0x20;
for (j=0;j<20;j++)delay(1000); //xd delay
keys=0;
wrt377=wrt377v;
if(!(INT0&INT1)&&key_press==0)
{
key_xd=1; //confirm keypress
EX0=0;EX1=0;
}
else
{key_xd=0;keys=0;wrt377=wrt377v;} //confirm no keypress
}
追问
您这个也太乱了啊~键盘去抖的程序么~~
追答
是键盘

内部特殊功能寄存器访问方法
sfr MyData =0x30;
外部存储器或特定地址访问方法
#define wrt377 XBYTE[0X8000]

MyFyb()
{
unsigned char sd;
MyData = 0x01;

wrt377 = 0x25;
sd = wrt377;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3e4758419
2011-12-10 · TA获得超过301个赞
知道小有建树答主
回答量:341
采纳率:33%
帮助的人:71.5万
展开全部
还像是可以自己定义一个特殊地址,然后调用!如头文件里的内容……
sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式