树莓派驱动DHT22
树莓派-DHT22测量湿度
一般的温湿度传感器有dht11和dht22,dht11比较便宜,dht22比dht11贵好几倍,自然测量的准确度肯定是dht22高一些。追求更高精准度的可以使用SHT1x。
一、DHT22介绍
如图,一个dht22温湿度传感器
商家卖的一般都是这种已经封装好了的,三个针脚(一个vcc,一个gnd,一个data):
二、硬件连接
接线很简单:
Vcc接树莓派3.3v即1号针脚,Gnd接树莓派gnd,Data随便接一个GPIO脚,我接的是GPIO4。
三、软件编程
(1)输入以下命令,下载安装Adafruit提供的python驱动,
#sudo apt-get update #sudo apt-get install build-essential python-dev #git clone https://github.com/adafruit/Adafruit_Python_DHT.git #cd Adafruit_Python_DHT #sudo python setup.py install |
如果不出错的话就能安装好了。
(2)dht22的代码如下,(如果是dht11,把sensor = Adafruit_DHT.DHT22改为sensor = Adafruit_DHT.DHT11)
在Adafruit_Python_DHT目录外新建一个.py文件
#!/usr/bin/python import Adafruit_DHT sensor = Adafruit_DHT.DHT22 pin = 4 #GPIO4 humidity, temperature = Adafruit_DHT.read_retry(sensor, pin) if humidity is not None and temperature is not None: print('Temp={0:0.1f}*C Humidity={1:0.1f}%'.format(temperature, humidity)) else: print('Failed to get reading. Try again!') |
(3)把以上代码保存为dht22.py
然后执行
#sudo python dht22.py |
四、效果图: