BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #15159同步于 2014/12/5
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

求拜师入门 uVision4 C51

nlrabbit
2014/12/5镜像同步4 回复
之前有C++ Delphi php等基础,做过项目 现在有个紧急任务,求熟悉uVision4 C51的同学当面指点一下,谢谢
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
nlrabbit机器人#1 · 2014/12/7
请教以下代码: sfr IEN0 = 0xA8; sbit EA = IEN0^7; 文档里说IEN0是“Interrupt Enable 0 Register”,但是没有EA的说明,这个EA是个啥?
allenxu1314机器人#2 · 2014/12/16
总中断允许位
nlrabbit机器人#3 · 2014/12/16
能分别解释一下IEN0和EA分别是啥么?谢谢 【 在 allenxu1314 的大作中提到: 】 : 总中断允许位
allenxu1314机器人#4 · 2014/12/16
http://wenku.baidu.com/view/8c663d5077232f60ddcca114.html 你可以到上面链接中去看,顺便解释下: sfr用于将一个单片机的特殊功能寄存器(special function register)赋值给一个变量,这样在后面的程序中就可以中这个变量指引(refer to)该寄存器。 sbit与sfr用法类似,只是sbit是位操作,用于将某个sfr中具体位赋值给一个变量,这样后面程序就可用通过该变量为该位清0或置1。 IEN0和EA分别代表,中段寄存器中外部中断0控制位和总中断控制位。通过对IEN0置位可以打开外部中断0,但是EA是所有中断的开关,EA使能,外部中断0才能工作,否则包括定时中断等其他中断即使置位了,只要EA不使能都不能工作。 中断寄存器的寻址地址是A8,是个8位寄存器,最低位正好是IEN0。所以 sfr IEN0 = 0xA8; 这句是将中断寄存器赋值给IEN0,按理这里不应该使用IEN0,应该使用IE指代 而EA正好在第7位, sbit EA = IEN0^7; 这里是将中断寄存器第7位赋值给了EA。 同理,正常IEN0应该为 sbit EA = IE^0; 【 在 nlrabbit 的大作中提到: 】 : 能分别解释一下IEN0和EA分别是啥么?谢谢 :