如果是这样的话,感觉很像是时序的问题,我的推测可能是LCD的IO输出, 由于某种原因使得DHT111模块的输入IO时序出现了变化,导致它读不上来。
我谷歌了一下,找到这篇分享的帖子 “基于STM8的DHT11温湿度传感器的驱动代码设计” CSDN的博客
, 其中关于BUG的描述有可能对你的分析有帮助。(我发不了Url, 麻烦用关键字百度一下)
我的建议是,如果有示波器的话,最好观察一下DHT111模块IO脚上的信号,很可能已经发生了变化。
另,我有个想法,你可以试一试,在原有的出问题的地方,换成一个delay(延时函数)的调用。看只是有延时会不会有影响,如果没有,那么可以再把输出LCD的语句加上,再延时。
看有没有影响,我之前用过一个Wifi模块,也是没有数据输出,加了一个延时之后就好了。 |