
DHT11
Влажность 20-80% +- 5%
Температура 0-50 °С+- 2%
Данные считываются в целых единицах.
DHT22
Влажность 0-100% +- 5%
Температура -40-125 °С +- 0.5%
Данные считываются с точностью до десятых.
Подключение

Подключение к Raspberry Pi особой сложности не представляет: подключаем + от датчика к +5V на Raspberry Pi, "-" — к земле, и сигнал к одному из GPIO выводов.
Устанавливаем ПО
Оба датччика используют свой протокол вместо стандартизированного 1 wire, поэтому программное обеспечение для снятия показаний датчика тоже будет отличаться.
Сначала установим библиотеку на С для работы с GPIO www.open.com.au/mikem/bcm2835/index.html
wget http://www.open.com.au/mikem/bcm2835/bcm2835-1.15.tar.gz
tar xzf bcm2835-1.15.tar.gz
cd bcm2835-1.15/
./configure
make
make install
Для чтения данных с датчика за основу был взят файл на С Adafruit_DHT_Driver. Без внесения некоторых изменений работать с DHT22, этот код отказывался, пришлось немного изменить.
Файл readDHT.c
Компилируем
gcc readDHT.c -lbcm2835 -lrt -o readDHT
Пробуем считывать данные
./readDHT {тип датчика 11 или 22} {номер GPIO вывода Raspberry PI}
Например DHT11 подключен к GPIO4
root@raspberrypi /var/www/application/scripts/DHT # ./readDHT 11 4
Using pin #4
Data (40): 0x23 0x0 0x17 0x0 0x3a
Temp = 23 *C, Hum = 35 %
или DHT22 подключен к GPIO17
root@raspberrypi /var/www/application/scripts/DHT # ./readDHT 22 17
Using pin #17
Data (40): 0x1 0x75 0x0 0xea 0x60
Temp = 23.4 *C, Hum = 37.3 %