当前位置: 代码迷 >> 单片机 >> WHILE语句等待,该如何处理
  详细解决方案

WHILE语句等待,该如何处理

热度:205   发布时间:2016-04-28 16:31:15.0
WHILE语句等待
#define DS12C887_A XBYTE [0x3f0a]//寄存器A,A.7—只读判断忙闲

void clock_judge_busy(void)
{ while( DS12C887_A & 0x80 );//忙则循环等待
}


这个WHILE语句怎么理解啊,求各大牛指点!!

------解决方案--------------------
DS12C887_A被定义为外部RAM中地址为0x3f0a的字节,while( DS12C887_A & 0x80 );表示DS12C887_A与0x80做与运算,即如果DS12C887_A的最高位为1,就一直while循环,直到DS12C887_A的最高位为。
------解决方案--------------------
DS12C887_A宏定义为寄存器A的地址0x3f0a
读该地址,就是读寄存器A中的数据
 while( DS12C887_A & 0x80 );//忙则循环等待
判断寄存器A中的最高位是否为1,为1则等待。
楼主可怜的结贴率:0.00% 
  相关解决方案