登录注册
论坛
一粒金砂(高级)
70
0
/*读一个字节函数*/ uchar ds18b20_read_byte() { uchar i,value; for(i=0;i<8;i++) { dq=0; // 给低电平过几个微秒之后就采样 value>>=1; dq=1; //为什么必须释放总线才能采样??? if(dq) value=value|0x80; //由于是从最低位开始读,所以向后移位 delay1us(5); } return value; }
还有就是如果令dq=1,那么下面if(dq) 不是一定会成立了么?
扫一扫,分享给好友
版主
4008
发表回复 回帖后跳转到最后一页
EEWorld Datasheet 技术支持
查看 »