51单片机控制DS18B20温度传感器编程问题求助。

2020-01-15 19:19发布

if(DQ)语句上面不是已经DQ=1了吗,为什么还要写这个if语句,DQ的值难道是动态变化的吗?DS18B20读取一个字节的这段程序语法我都能看懂,就是不知道这段程序硬件层面到底是什么意思,希望大家能给我解释一下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
lgg88
1楼-- · 2020-01-15 23:09
 精彩回答 2  元偷偷看……
wistarky
2楼-- · 2020-01-16 00:15
要看datasheet,
DQ=0是通知DS18B20开始要开始读取,
DQ=1是放开让DS18B20开始回传
if(DQ)是读取回传bit
Tliang
3楼-- · 2020-01-16 02:02
DQ在上面肯定用sbit DQ = PX^X定义了。这个定义指的是DQ代表这个IO了,你在不考虑外围元件的情况下DQ=1确实会让你的IO为高电平,且你读DQ他也是等于1。但是如果外围把它拉低那么你读的时候就为0了。
理解这个了就看手册上的协议
yumeng_
4楼-- · 2020-01-16 06:55
Tliang 发表于 2017-9-2 16:07
DQ在上面肯定用sbit DQ = PX^X定义了。这个定义指的是DQ代表这个IO了,你在不考虑外围元件的情况下DQ=1确实 ...

明白了,谢谢你。
xiaobendan
5楼-- · 2020-01-16 11:53
字体太大了

一周热门 更多>