找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2350|回复: 2
收起左侧

关于温湿度传感器程序的一点不解

[复制链接]
ID:47184 发表于 2017-2-4 19:51 | 显示全部楼层 |阅读模式
         if(dht_dat==0)
         {
         dht_num=2;
         while((dht_dat==0)&&(dht_num++));
         dht_num=2;
         while((dht_dat==1)&&(dht_num++));
         dht_d1=dht_readat();
         dht_d2=dht_readat();
         dht_t1=dht_readat();
         dht_t2=dht_readat();
         dht_chk=dht_readat();
         }
这是温湿度传感器程序中获取温湿度数据的程序,dht_dat为DATA引脚。
麻烦大侠详解
dht_num=2;
while((dht_dat==0)&&(dht_num++));
这段中
dht_num赋值2
和判断(dat_num++)为真用意是什么

回复

使用道具 举报

ID:153041 发表于 2017-2-5 09:22 | 显示全部楼层
单从字面理解:dht_num=2; 是设置一个初始计数值,
         while((dht_dat==0)&&(dht_num++)); 这一句本身是一个空循环体,当满足dht_dat=1时,或dht_num为0时(一直加到溢出归零)才退出循环往下走。  大概可以判断dht_num是一个附加超时判断的参数。 至于为什么要这样走,要查一下温湿度传感器的读取规则。
回复

使用道具 举报

ID:163539 发表于 2017-2-5 15:31 | 显示全部楼层
观摩一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表