// CÂU 1 - GIẢ LẬP NHIỆT ĐỘ + ĐIỀU KHIỂN LED
#define LED_GREEN 8
#define LED_YELLOW 9
#define LED_RED 10
float temp = 20; // bắt đầu từ 20 độ
bool increasing = true; // trạng thái tăng/giảm
void setup() {
pinMode(LED_GREEN, OUTPUT);
pinMode(LED_YELLOW, OUTPUT);
pinMode(LED_RED, OUTPUT);
}
// hàm tắt tất cả LED (đảm bảo chỉ 1 LED sáng)
void turnOffAll() {
digitalWrite(LED_GREEN, LOW);
digitalWrite(LED_YELLOW, LOW);
digitalWrite(LED_RED, LOW);
}
void loop() {
// --- GIẢ LẬP NHIỆT ĐỘ ---
if (increasing) temp += 0.5;
else temp -= 0.5;
if (temp >= 40) increasing = false;
if (temp <= 20) increasing = true;
// --- LOGIC LED ---
turnOffAll();
if (temp < 25) {
digitalWrite(LED_GREEN, HIGH);
}
else if (temp <= 35) {
digitalWrite(LED_YELLOW, HIGH);
}
else {
digitalWrite(LED_RED, HIGH);
}
delay(200);
}