DHT数据读取对时序的要求非常高,建议你看看我之前的帖子//www.icxbk.com/community/thread-64863-1-1.html
注意时序图,时序图每一个位都是以0结束,你的函数DHT11_Read_Bit应该是没有等待到高电平结束直接返回了。
也就是说你的DHT11_Read_Bit函数没有完成一个完整的时序,紧接着开始读第二个数据。
另外检查一下你的延迟函数,是不是足够精确。如果有逻辑分析仪就比较容易检查问题了。