蓝桥杯嵌入式扩展板模块之温湿度传感器
DHT11模块介绍
这个DHT11模块的驱动比赛的时候是提供的,但是你要明白它返回的数据是怎么去使用的。
DHT11驱动函数讲解
由上图可以看出,我们得到的数据是40位的,并且后8位是校验位,所以也验证了dht11_read()函数的最后一行,要先右移8位再输出。那么我们得到数据只有要做的就是把数据提取出来就可以了。
x1= dht11_read();
sprintf((char*)str,"The Y Val:%3d",x1>>24);
LCD_DisplayStringLine(Line2,str);
sprintf((char*)str,"The Z Val:%3d",(x1>>8)&0xff);
LCD_DisplayStringLine(Line4,str);
Delay_Ms(2000);//采样时间必须大于2S,才可以采集到的真实数据。
我们只需要采集它的整数部分就可了,它小数部分其实完全可以忽略的。顺便一提的是它每采集一次,最好延时2S以上为的就是保证你每次每次显示的的数据都是真正实时采集的。