#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C adresi va ekranning qator va ustunlarini o'rnating
const int ledPin1 = 13; // Birinchi svetodiod uchun pin raqami
const int ledPin2 = 12; // Ikkinchi svetodiod uchun pin raqami
bool isLit1 = false; // Birinchi svetodiod holati (yoqilgan yoki o'chirilgan)
bool isLit2 = false; // Ikkinchi svetodiod holati (yoqilgan yoki o'chirilgan)
void setup() {
lcd.begin(16, 2); // Ekran o'rnatiladi
lcd.print("LED 1: Off LED 2: Off"); // Boshlang'ich holatini ekran ustida chiqarish
pinMode(ledPin1, OUTPUT); // Birinchi svetodiod uchun pin OUTPUT holatiga o'rnatiladi
pinMode(ledPin2, OUTPUT); // Ikkinchi svetodiod uchun pin OUTPUT holatiga o'rnatiladi
}
void loop() {
isLit1 = !isLit1; // Birinchi svetodiod holatini o'zgartirish
isLit2 = !isLit2; // Ikkinchi svetodiod holatini o'zgartirish
// Birinchi svetodiodni yoqish yoki o'chish
digitalWrite(ledPin1, isLit1 ? HIGH : LOW);
// Ikkinchi svetodiodni yoqish yoki o'chish
digitalWrite(ledPin2, isLit2 ? HIGH : LOW);
// Ekran bilan xabar chiqarish
lcd.setCursor(0, 1); // Ma'lumotni 2-qatorning boshidan boshlab chiqarish
lcd.print("LED 1: "); // Birinchi svetodiodning holatini chiqarish
lcd.print(isLit1 ? "On " : "Off ");
lcd.setCursor(9, 1); // Ma'lumotni 2-qatorning 9-beli joynidan boshlab chiqarish
lcd.print("LED 2: "); // Ikkinchi svetodiodning holatini chiqarish
lcd.print(isLit2 ? "On " : "Off ");
delay(1000); // 1 soniya kuting
}