本帖最后由 xlsbz 于 2009-11-6 16:32 编辑
//以下所有环境都是C语言环境
sbit GPIO0_Pin_0 = P0^0;
一种是 if (P0^0) {
dosomething();
}
另一种是
if (GPIO0_Pin_0) {
dosomething();
}
----------------------------
请问(1)这两种判断有什么不同么?第一种读的是引脚?第二种读的是锁存器?
(2)只要是 “写”也就是 “输出”,就不用注意引脚与锁存器的不同了么?
(3)我知道,当“读”的时候,要先置1,后读取。有人建议当用C语言编程时候,建议不要直接对端口判断,要先将其值赋值到片内位变量上,再对位变量进行判断。“将其值赋值到片内位变量上”指的是上面例子中的sbit GPIO0_Pin_0 = P0^0;么?
==============
多谢各位回复!! |