DocsTech
/
NONEDISPLAY
/

~ cd подключение dht11 к arduino и вывод на lcd 1602 i2c: схема и скетч

Вступление

DHT11 — это цифровой датчик температуры и влажности, который часто используется в проектах на базе Arduino. LCD 1602 — это популярный дисплей, который позволяет отображать информацию в формате 16×2 символов. В этой статье мы рассмотрим, как подключить DHT11 к Arduino и вывести данные на дисплей LCD 1602 с интерфейсом I2C. Скетч подходит для всех типов Arduino.

Краткое описание DHT11 и LCD 1602

DHT11 измеряет влажность в диапазоне от 20% до 90% и температуру от 0°C до 50°C. LCD 1602 позволяет отображать до 32 символов, что делает его удобным для вывода данных с различных датчиков.

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

Для подключения DHT11 и LCD 1602 I2C к Arduino вам понадобятся следующие компоненты:

Таблица 1. Схема подключения DHT11 и Arduino
DHT11Arduino
1VCC5V
2GNDGND
3DATAD2

Установите резистор 10 кОм между выводами VCC и DATA на DHT11.

Таблица 2. Схема подключения LCD 1602 и Arduino
LCD 1602Arduino
1VCC5V
2GNDGND
3SDAA4
4SCLA5

Необходимые библиотеки

  1. DHT-sensor-library: Библиотека для работы с датчиком DHT11.
  2. Adafruit Unified Sensor: Библиотека для работы с различными датчиками.
  3. LiquidCrystal I2C: Библиотека для работы с LCD 1602 через интерфейс I2C.

Код взаимодействия DHT11 и Arduino с выводом на LCD 1602

Код на языках C/C++ считывает температуру и влажность с датчика DHT11 каждые 2 секунды. Значения обновляются на экране дисплея LCD 1602.
...
Копировать
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#include <Adafruit_Sensor.h>

// Определите пин, к которому подключен DHT11
#define DHTPIN 2

// Определите тип используемого DHT датчика
#define DHTTYPE DHT11

// Создайте экземпляр класса DHT
DHT dht(DHTPIN, DHTTYPE);

// Создайте экземпляр класса LiquidCrystal_I2C с адресом 0x27
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  // Инициализируйте последовательный порт для вывода данных
  Serial.begin(9600);
  Serial.println("DHT11 датчик температуры и влажности и LCD1602");

  // Инициализируйте DHT11
  dht.begin();

  // Инициализируйте LCD1602
  lcd.begin();
  lcd.backlight();
  lcd.print("DHT11 & LCD1602");
  delay(2000);
  lcd.clear();
}

void loop() {
  // Подождите 2 секунды между измерениями
  delay(2000);

  // Считайте данные с DHT11
  float humidity = dht.readHumidity();
  float temperature = dht.readTemperature();

  // Проверьте, произошла ли ошибка при чтении данных
  if (isnan(humidity) || isnan(temperature)) {
    Serial.println("Ошибка при чтении данных с DHT11");
    lcd.setCursor(0, 0);
    lcd.print("Ошибка DHT11");
    return;
  }

  // Вывод данных в Serial Monitor
  Serial.print("Влажность: ");
  Serial.print(humidity);
  Serial.print(" %\t");
  Serial.print("Температура: ");
  Serial.print(temperature);
  Serial.println(" *C");

  // Вывод данных на LCD1602
  lcd.setCursor(0, 0);
  lcd.print("Влажность: ");
  lcd.print(humidity);
  lcd.print(" %");
  lcd.setCursor(0, 1);
  lcd.print("Темп: ");
  lcd.print(temperature);
  lcd.print(" C");
}

Заключение

Подключение DHT11 и LCD 1602 к Arduino позволяет создавать простые и функциональные системы мониторинга температуры и влажности. Используя предоставленные схемы подключения и пример кода, вы сможете быстро реализовать свой проект и отобразить данные на дисплее.

FAQ

1. Какие компоненты нужны для подключения DHT11 и LCD 1602 к Arduino?
Вам понадобятся Arduino, датчик DHT11, резистор 10 кОм, дисплей LCD 1602 с модулем I2C и соединительные провода.

2. Какие библиотеки нужны для работы с DHT11 и LCD 1602?
Используйте библиотеки DHT-sensor-library, Adafruit Unified Sensor и LiquidCrystal I2C.

3. Как часто можно считывать данные с DHT11?
Рекомендуется делать замеры каждые 2 секунды для обеспечения точности данных и предотвращения перегрева датчика.

4. Какой адрес используется для модуля I2C дисплея LCD 1602?
Обычно используется адрес 0x27, но он может отличаться в зависимости от конкретного модуля.

Главная
Курсы
Вебинары
Анализ рынка вакансий в сфере RTL-дизайна в России: тренды, спрос и перспективы
LinuxCNC: Преимущества и применение в станкостроении и автоматизации
Алгоритм Хаффмана: Теория, методология и практическая реализация для эффективного сжатия данных
Chisel vs. SystemVerilog: Новый взгляд на проектирование цифровых схем
Подключение датчика ZMPT101B к Arduino: схема, настройка и пример кода
Подключение MAX6675 к Arduino: схема, библиотеки и примеры кода
Подключение и настройка MPU6050 к Arduino: схема, библиотеки и скетч
Подключение VL53L0X к Arduino: полное руководство по лазерному датчику расстояния
Подключение компас HMC5883L к Arduino: схема, библиотеки и пример кода
Подключение ACS712 к Arduino: схема, библиотеки и скетчи
Подключение ADXL345 к Arduino: схема, библиотеки и код
Подключение датчика INA219 к Arduino: схема, библиотеки и примеры кода
HC-SR04 и Arduino: схема подключения, библиотеки и скетч
Assertion-Based Verification(ABV): основные понятия, принцип работы и примеры
Подключение HX711 к Arduino: схема, библиотеки и код
Подключение DHT22 к Arduino: схема, код и необходимые библиотеки
Как подключить RCWL-0516 к Arduino: схема, библиотеки и скетч
Универсальная Методология Верификации (UVM): Описание, Особенности и Пример Использования
DS18B20: Подключение к Arduino, Библиотеки и Скетч
Методологии верификации HDL-кода: Основы, Преимущества и Популярные Подходы
Роль ПЛИС в Алготрейдинге и Высокочастотной Торговле
Lint, CDC, RDC, LEC, Power Analyzer, STA и DFT для HDL
Пиратство плохо! Мне так сказали…
Применение Icarus Verilog для тестирования с входными данными
Ключевые параметры для выбора цифроаналогового преобразователя (ЦАП)
Все о КНФ и ДНФ: Понятие, Примеры и Применение
Импликация: Что Это, Таблица Истинности и Применение в Информатике
Стрелка Пирса: Что Это за Логическая Операция и Таблица Истинности
Штрих Шеффера: Полное Руководство
STM32F103 с использованием HAL и I2C: Подробная конфигурация и пример кода
Подключение DHT11 к ESP32: Схема, Библиотеки и Пример Кода
ESP8266 I2C: настройка для master и slave
Подключение DHT11 к Arduino и Вывод на LCD 1602 I2C: Схема и Скетч
Подключение DHT11 к Arduino: Схема, Библиотеки и Скетч
ESP32 I2C: Настройка кода под master и slave
TM1637 Подключение к Arduino: Полное Руководство
Подключение часов DS3231 к Arduino и LCD 1602 I2C
Arduino: Часы Реального Времени DS1302 на LCD 1602 I2C
ESP32 SPI: Объявление SPI на ESP32 с Примером Кода
ESP8266 SPI: полная инструкция SPI на ESP8266
Протокол SPI: Регистровая Логика, Передача Данных и Режимы
Демультиплексор: принцип работы, схема и основы
Счетчики с синхронным и асинхронным сбросом на Verilog
Знаковость signed в Verilog: примеры, синтаксис, оптимизация
Директива Define в Verilog: Синтаксис, Примеры и Применение
Таблицы истинности триггеров: JK, RS, D и T
Fork и begin в Verilog: обзор и различия
Posedge и Negedge в Verilog: Синтаксис и Функциональность
Verilog always: Синтаксис, Примеры и Применение
Wire в Verilog: Основы использования, синтаксис и примеры кода
Блокирующие и неблокирующие присваивания в Verilog
Verilog Assign: что делает этот оператор?
Verilog Parameter: Ключевой Инструмент Оптимизации
Многомерные массивы в Verilog
Case Verilog
Дешифратор. Принцип работы и Примеры
Модули в Verilog
Описание FIFO. Примеры на Verilog и С++
Закрыть