#include <LiquidCrystal_I2C.h>
#define I2C_ADDR 0x27
#define LCD_COLUMNS 20
#define LCD_LINES 4
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
void setup() {
// Init
lcd.init();
lcd.backlight();
// Print something
lcd.setCursor(3, 0);
lcd.print("Welcome to");
lcd.setCursor(2, 1);
lcd.print("lcd display");
lcd.setCursor(5, 2);
lcd.print("Simulator");
lcd.setCursor(7, 3);
lcd.print("Enjoy!");
}
void loop() {
lcd.clear();
delay(100);
lcd.setCursor(0, 0); //เลขคอลัมน์, เลขแถว
lcd.print("TEMP");
lcd.setCursor(6, 0); //เลขคอลัมน์, เลขแถว
lcd.print(":");
lcd.setCursor(8, 0); //เลขคอลัมน์, เลขแถว
lcd.print(99.99);
lcd.setCursor(14, 0); //เลขคอลัมน์, เลขแถว
lcd.print((char) 223);
lcd.setCursor(15, 0); //เลขคอลัมน์, เลขแถว
lcd.print("C");
lcd.setCursor(0, 1); //เลขคอลัมน์, เลขแถว
lcd.print("TEMP");
lcd.setCursor(6, 1); //เลขคอลัมน์, เลขแถว
lcd.print(":");
lcd.setCursor(8, 1); //เลขคอลัมน์, เลขแถว
lcd.print(33.33);
lcd.setCursor(14, 1); //เลขคอลัมน์, เลขแถว
lcd.print((char) 223);
lcd.setCursor(15, 1); //เลขคอลัมน์, เลขแถว
lcd.print("F");
lcd.setCursor(0, 2); //เลขคอลัมน์, เลขแถว
lcd.print("HUMID");
lcd.setCursor(6, 2); //เลขคอลัมน์, เลขแถว
lcd.print(":");
lcd.setCursor(8, 2); //เลขคอลัมน์, เลขแถว
lcd.print(11.11);
lcd.setCursor(14, 2); //เลขคอลัมน์, เลขแถว
lcd.print("%");
lcd.setCursor(0,3);
lcd.print("20/06/2024");
lcd.setCursor(12, 3);
lcd.print("|");
lcd.setCursor(13, 3);
lcd.print("18:30");
lcd.setCursor(18, 3);
lcd.print("|");
lcd.setCursor(19, 3);
lcd.print(1);
delay(5000);
lcd.clear();
delay(100);
// >>> Voltage
lcd.setCursor(0, 0); //เลขคอลัมน์, เลขแถว
lcd.print("VOLTAGE:");
lcd.setCursor(9, 0); //เลขคอลัมน์, เลขแถว
lcd.print(233.20);
lcd.setCursor(15, 0); //เลขคอลัมน์, เลขแถว
lcd.print("V");
// >>> Voltage
// >>> CURRENT
lcd.setCursor(0, 1); //เลขคอลัมน์, เลขแถว
lcd.print("CURRENT");
lcd.setCursor(7, 1); //เลขคอลัมน์, เลขแถว
lcd.print(":");
lcd.setCursor(9, 1); //เลขคอลัมน์, เลขแถว
lcd.print(0.05);
lcd.setCursor(12, 1); //เลขคอลัมน์, เลขแถว
lcd.print("A");
// >>> CURRENT
// >>> ENERGY
lcd.setCursor(0, 2); //เลขคอลัมน์, เลขแถว
lcd.print("ENERGY");
lcd.setCursor(7, 2); //เลขคอลัมน์, เลขแถว
lcd.print(":");
lcd.setCursor(9, 2); //เลขคอลัมน์, เลขแถว
lcd.print(0.060);
lcd.setCursor(12, 2); //เลขคอลัมน์, เลขแถว
lcd.print("kWh");
// >>> ENERGY
// >>> POWER
lcd.setCursor(0, 3); //เลขคอลัมน์, เลขแถว
lcd.print("POWER");
lcd.setCursor(7, 3); //เลขคอลัมน์, เลขแถว
lcd.print(":");
lcd.setCursor(9, 3); //เลขคอลัมน์, เลขแถว
lcd.print(6.80);
lcd.setCursor(12, 3); //เลขคอลัมน์, เลขแถว
lcd.print("W");
// >>> POWER
delay(5000);
}