/*
Произведите подключение двух дисплеев LCD 16x2 (I2C) по интерфейсу I2C.
Настройте уникальные адреса I2C для дисплеев вида (0xXX) в diagram.json,
атрибут ("i2c-address": "0xXX") (по умолчанию адрес 0x27).
Подключите аналоговый датчик температуры NTC.
Напишите код программы, используя wiki-страницу дисплея или пример ниже.
На первом дисплее нужно отобразить любой текст на ваш выбор
— можно написать «HELLO WORLD».
На второй дисплей выведите показания датчика температуры.
*/
#include <LiquidCrystal_I2C.h>
#define I2C_ADDR_1 0x26
#define I2C_ADDR_2 0x27
#define LCD_COLUMNS 16
#define LCD_LINES 2
LiquidCrystal_I2C lcd_1(I2C_ADDR_1, LCD_COLUMNS, LCD_LINES);
LiquidCrystal_I2C lcd_2(I2C_ADDR_2, LCD_COLUMNS, LCD_LINES);
//Определения для работы модуля температуры
const float BETA = 3950; // should match the Beta Coefficient of the thermistor
int analogValue;
float celsius;
void setup() {
Serial.begin(115200);
// Init
lcd_1.init();
lcd_1.backlight();
lcd_2.init();
lcd_2.backlight();
// Print something
lcd_1.setCursor(0, 0);
lcd_1.print("Hello, world!");
}
void loop() {
analogValue = analogRead(A1);
celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15;
lcd_2.setCursor(0, 0);
lcd_2.print("Temperature:");
lcd_2.setCursor(0, 1);
lcd_2.print(celsius);
Serial.println(celsius);
}