int servoPin = 6; // Пін керування серводвигуном
int ledPin = 13; // Пін для світлодіода
int buttonPin = 12; // Пін для кнопки
int potentiometerPin = A0; // Пін для потенціометра
int dhtPin = 2; // підключено до цифрового піну 2
#include <Servo.h> // Підключаємо бібліотеку для серводвигуна
#include <DHT.h> // Підключаємо бібліотеку для датчика температури DHT
#include <LiquidCrystal_I2C.h> // Підключаємо бібліотеку для дисплея I2C
Servo myServo; // Створюємо об'єкт серводвигуна
DHT dht(dhtPin, DHT22); // Створюємо об'єкт DHT для роботи з датчиком
LiquidCrystal_I2C lcd(0x27, 16, 2); // Створюємо об'єкт дисплея 16x2 за адресою 0x27
void setup() {
pinMode(ledPin, OUTPUT); // Налаштовуємо пін світлодіода як вихід
pinMode(buttonPin, INPUT); // Налаштовуємо пін кнопки як вхід
myServo.attach(servoPin); // Приєднуємо серво до піну
dht.begin(); // Ініціалізуємо датчик температури
lcd.init(); // Ініціалізуємо дисплей
lcd.backlight(); // Вмикаємо підсвітку дисплея
}
void loop() {
if(digitalRead(buttonPin)==HIGH){
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
int potValue = analogRead(potentiometerPin);
int angle = map(potValue, 0, 1023, 0, 180);
myServo.write(angle);
float temp = dht.readTemperature();
String tempString = "Temp: " + String(temp) + " C";
lcd.clear();
lcd.setCursor(0,0);
lcd.print(tempString);
delay(500);
}