Подключение I2C датчика температуры и влажности DHT12 к Arduino и вывод данных на LCD1602 HD44780

DHT12 — это улучшенная версия датчика температуры и влажности DHT11 с интерфейсом I2C/TWI. Более подробное описание этого модуля можете найти на странице DHT12 — I2C датчик влажности и температуры. А в этом посте мы подключим по I2C датчик DHT12 к Arduino, установим необходимую библиотеку и будем выводить значения в последовательный порт компьютера и на дисплей LCD1602 используя I2C модуль — PCF8574.

Установка библиотеки DHT12

Для работы с датчиком я использую библиотеку DHT12.zip. Библиотеку можно установить из самой среды следующим образом:

  1. В Arduino IDE открываем менеджер библиотек: Скетч->Подключить библиотеку->Добавить .ZIP библиотеку…Подключение I2C датчика температуры и влажности DHT12 к Arduino - Добавить .ZIP библиотеку...
  2. Выбираем .ZIP архив (DHT12.zip) и кликаем Open/Открыть.Подключение I2C датчика температуры и влажности DHT12 к Arduino - Выбор архива .ZIP
  3. Библиотека установлена.Подключение I2C датчика температуры и влажности DHT12 к Arduino - Библиотека Добавлена.

Ещё можно распаковать архив и добавить в папку «libraries» в папке с Arduino IDE. Не забывайте перезагрузить среду, если на момент добавления Arduino IDE была открыта.

Описание методов библиотеки DHT12.zip

begin(uint8_t, uint8_t)

Инициализация DHT12 на ESP8266

begin()

Инициализация DHT12

read()

Читает, преобразовывает и сохраняет данные с DHT12. Возвращает статус DHT12_OK, если всё прошло нормально или DHT12_ERROR_CHECKSUM, DHT12_ERROR_CONNECT, DHT12_MISSING_BYTES в случае ошибки.

getHumidity()

Возвращает относительную влажность. Данные обновляются при вызове метода read().

getTemperature()

Возвращает температуру. Данные обновляются при вызове метода read().

 

Схема подключения DHT12 к Arduino

Подключается датчик температуры и влажности DHT12 к Arduino достаточно просто. Схема подключения показана на рисунке.

Схема подключения DHT12 к Arduino Pro MiniНе нужно забывать про подтягивающие резисторы на 10кОм на линии SDA и SCL.

Arduino DHT12
VCC VCC
A4 SDA
GND GND
A5 SCL

Пример скетча

В приведенном ниже скетче мы будем измерять и отсылать данные о состоянии температуры и влажности на компьютер через последовательный порт.

Результат

Открываем монитор порта. В него будут выводиться значения влажности и температуры.

Подключение I2C датчика температуры и влажности DHT12 к Arduino - Результат

Подключение DHT12 к Arduino и вывод на LCD1602

Чтобы сделать устройство автономным, мы будем выводить данные на ЖК дисплей, в моём случае — это LCD1602 (два ряда по 16 символов) который управляется по интерфейсу I2C (PCF8574). Для подключения данного LCD модуля требуется всего 4 линии: питания (Vcc), земля (GND), последовательная линия данных SDA (Serial Data) и последовательная линия тактирования SCL (Serial CLock). Подробнее в статье Подключение LCD1602 к Arduino по I2C (HD44780/PCF8574).

Схема подключения LCD1602 и DHT12 к Arduino

Схема подключения ЖК, DHT12 и Arduino Pro Mini выглядит следующим образом:

Схема подключения I2C PCF8574 LCD1602 и DHT12 к ArduinoВ данном случае можно не использовать дополнительные подтягивающие резисторы, так как они присутствуют на модуле PCF8574.

Пример скетча

В приведенном ниже скетче мы будем измерять и отсылать данные о состоянии температуры и влажности по I2C на ЖК дисплей.

Результат

Подключение DHT12 к Arduino и вывод на LCD1602 - Результат

Материалы

DHT12 — I2C датчик влажности и температуры
Подключение LCD1602 к Arduino по I2C (HD44780/PCF8574)
LiquidCrystal_I2C

Похожие записи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *