DS12B20 и DHT не выводят показания на lcd1602
- Войдите на сайт для отправки комментариев
Вс, 08/08/2021 - 14:45
Добрый день! Была идея сделать метеостанцию на основе ардуино уно, дисплея 1602 и датчиков DS12B20 и DHT. С первого надо было выводить температуру, со второго - влажность. Написал код, загрузил, но вот беда - на дисплее нету ничего, кроме различных непонятных символов. 1602 подключён верно - проверял на любимом hello world. Прошу о помощи, ибо я шарю в этой теме совсем немного. Код даю ниже.
//Подключение библиотек #include <LiquidCrystal.h> #include <DHT.h> #include <OneWire.h> #include <DallasTemperature.h> //Данные передаются на пин 10 #define ONE_WIRE_BUS 10 //Установка переменной oneWire для коммуникации с OneWire устройствами OneWire oneWire(ONE_WIRE_BUS); //Передать ссылку oneWire к Dallas Temperature DallasTemperature sensors(&oneWire); #define DHTPIN 6 //Определение пина для получения данных #define DHTTYPE DHT11 //Определение типа датчика LiquidCrystal lcd(12, 11, 2, 3, 4, 5); //Инициализация дисплея с номерами пинов String hum = ""; //Переменная для вывода влажности DHT dht(DHTPIN, DHTTYPE); //Инициализация датчика void setup() { lcd.begin(16, 2); //Установка количества колонок и строк на дисплее dht.begin(); //Запуск датчика sensors.begin(); //Инициализация датчика } void loop() { delay(2000); //Задержка 2 секунды (довольно медленный датчик) sensors.requestTemperatures(); //Команда для запроса температуры float h = dht.readHumidity(); //Чтение данных влажности if (isnan(h)) // Проверка, все ли данные корректны return; //Возврат, если данные некорректно считались hum = "Hum: " + String(h) + "%"; //Строка влажности lcd.setCursor(0, 0); //Вывод температуры lcd.print((String)"Temp: " + sensors.getTempCByIndex(0) + " C"); lcd.setCursor(0, 1); //Вывод влажности lcd.print(hum); }
Всё, проблема скрывалась в неправильном подключении 1 провода дисплея
А что такое DS12B20?
https://www.robotistan.com/waterproof-ds12b20-digital-temperature-sensor
А как тода он хелловрлд показывал?
Хелловорды ани паказывают ваще без кода, простатак )))