最近调试DHT11,但返回值一直为零。
使用原子的程序,测试硬件,读数正确。
然后,把该测试程序移植至大程序,读数一直为零。
观测 DHT11最原始的数据,发现条件buf[0]+buf[1]+buf[2]+buf[3])==buf[4]一直不能满足
同一环境条件下:
测试程序的测量数据: 1C 00 19 00 35
移植进大程序的测量数据:21 00 34 00 EF
相同的驱动程序,单总线通信接收数据差异比较大,初步判断是延时函数的问题
大程序使用了与原子不同的延时函数(这是前人所做的工作)
延时函数改与不改都很纠结!!
有什么简单的替代函数吗?
怎样检测延时函数的准确性?
如何用示波器捕捉DHT11的通信过程?
求大神帮助
一周热门 更多>