const float BETA = 3950; // should match the Beta Coefficient of the thermistor
//#include "Wire.h" // подключение библиотеки шины
#include <LiquidCrystal_I2C.h> // подключение библиотеки дисплея
LiquidCrystal_I2C LCD1(0x26, 16, 2); // присваиваем имя первому дисплею
LiquidCrystal_I2C LCD2(0x27, 16, 2); // присваиваем имя второму дисплею
void setup() {
LCD1.init(); // инициализация первого дисплея
LCD2.init(); // инициализация второго дисплея
LCD1.backlight(); // включение подсветки
LCD2.backlight(); // включение подсветки
}
void loop() {
float analogValue = analogRead(A1); // ввод значения NTS в переменную
float celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15; // пересчет значения NTC в градусы Цельсия
// надпись на первом дисплее
LCD1.setCursor(1, 0); // установка курсора на определённую позицию
LCD1.print("HI, BRO!!!"); // передача данных на дисплей
LCD1.scrollDisplayLeft(); // скролл влево
// надпись на втором дисплее
LCD2.setCursor(2, 0); // установка курсора на определённую позицию
LCD2.print("temperature "); // передача данных на дисплей
LCD2.setCursor(2, 1); // установка курсора на определённую позицию
if (celsius < 0) { // условие пробела при плюсовом значении
LCD2.print(celsius); // передача данных на дисплей
}
else {
LCD2.print(" "); // печать пробела на место минуса
LCD2.print(celsius); // передача данных на дисплей
}
LCD2.setCursor(9, 1); // установка курсора на определённую позицию
LCD2.print(" C"); // передача данных на дисплей
delay(30);
}