单片机新手请教一个问题啊,在一个小的程序之初,有一个头文件reg52.h,打开这个头文件里面有一段内容是:

sfrP1=0x80上面这段代码是什么意思啊... sfr P1 = 0x80
上面这段代码是什么意思啊
展开
 我来答
百度网友b12a2e039
2012-11-19 · TA获得超过1533个赞
知道小有建树答主
回答量:819
采纳率:0%
帮助的人:705万
展开全部
sfr是定义寄存器的
这里其实就是定义P1这个标号,表示的是RAM中的0x80这个地址。实际上是P0的寄存器(不知道是不是你笔误把P0写成了P1)
更多追问追答
追问
是的,确实是笔误,不好意思啊。改了之后就是:
sfr P0 = 0x80 是不是意思就是说定义了一个寄存器P0,这个寄存器的地址是RAM中间的0x80。
以后的代码中P0就是代表RAM中的0x80这个地址。
是上面这个意思吗?
追答
恩,没错
laserenqingwan
2012-11-19 · TA获得超过445个赞
知道小有建树答主
回答量:430
采纳率:0%
帮助的人:190万
展开全部
SFR是特殊寄存器的统称,P1就是单片机的IO口,0x80是P1口端口寄存器的物理地址,
这段代码是告诉编译器遇到P1符号时就用地址0x80代替
追问
P0就是单片机的I0口,   这句话是不是 sfr P0 =  0x80  之后成立的?还是之前成立的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友20bc09a
2012-11-19
知道答主
回答量:71
采纳率:100%
帮助的人:14.4万
展开全部
在keil中,sfr与sfr16用于定义8051的特殊功能寄存器,其中sfr用来定义8为特殊功能寄存器,sfr16用来定义16位特殊功能寄存器。
sfr P0=0x80; //定义P0的I/O端口,其地址为80H。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Smart_wolf
2012-11-19 · TA获得超过1697个赞
知道小有建树答主
回答量:1468
采纳率:50%
帮助的人:667万
展开全部
位地址
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式