899 发表于 2022-4-1 14:01 大佬,怎么解决的 |
主函数第21行 运行DHT11_Init()之前要先运行DHT11_Rst() 单独运行DHT11_Init()会永远超时返回1 |
大佬,怎么解决的,我的问题和你的一样。 |
899 发表于 2022-4-1 14:01 怎样解决的,我也是一直检测不到设备,用了很多人的代码都不行,也换了元件,应该不是硬件问题 |
lkc8210 发表于 2022-4-1 09:49 感谢,解决了 |
示波器再接一根Debug脚(如PC12) 在dht11代码的53行之前加一句: PC12 = !PC12;//Debug脚输出取反,这是51的写法,STM32的没学过 在示波器看看Debug脚电平变化时STM在读什么电平 |
899 发表于 2022-3-31 21:03 OLED 显示了"DHT11 INIT.."代表初化成功 你看看DHT11的总线0/1的表达时间线 ![]() 再把DHT11的DATA脚接上示波器 对比一下波形 |
除了代码,传感器上拉电阻取值不恰当也可能是个问题 |
主函数第21行 运行DHT11_Init()之前要先运行DHT11_Rst() 单独运行DHT11_Init()会永远超时返回1 |
主函数代码
|