const int ledPins[] = {2, 4, 5, 18, 19, 21, 22, 23, 25, 26, 27, 32}; // Các chân nối LED
void setup() {
for (int i = 0; i < 12; i++) {
pinMode(ledPins[i], OUTPUT);
digitalWrite(ledPins[i], LOW);
}
}
void loop() {
// Hiệu ứng 1: Sáng từng LED từ ngoài vào
for (int i = 0; i < 12; i++) {
digitalWrite(ledPins[i], HIGH);
delay(100);
}
// Hiệu ứng 2: Tắt từng LED từ ngoài vào
for (int i = 0; i < 12; i++) {
digitalWrite(ledPins[i], LOW);
delay(100);
}
// Hiệu ứng 3: Nháy toàn bộ LED
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 12; j++) {
digitalWrite(ledPins[j], HIGH);
}
delay(500);
for (int j = 0; j < 12; j++) {
digitalWrite(ledPins[j], LOW);
}
delay(500);
}
// Hiệu ứng 4: Sáng tắt xen kẽ (chẵn/lẻ)
for (int i = 0; i < 12; i += 2) {
digitalWrite(ledPins[i], HIGH); // Sáng LED chẵn
digitalWrite(ledPins[i + 1], LOW); // Tắt LED lẻ
}
delay(500);
for (int i = 0; i < 12; i += 2) {
digitalWrite(ledPins[i], LOW); // Tắt LED chẵn
digitalWrite(ledPins[i + 1], HIGH); // Sáng LED lẻ
}
delay(500);
// Hiệu ứng 5: Từng lớp sáng dần (2 LED -> 4 LED -> 6 LED, ...)
for (int i = 0; i < 12; i++) {
digitalWrite(ledPins[i], HIGH);
delay(200);
}
delay(1000);
for (int i = 0; i < 12; i++) {
digitalWrite(ledPins[i], LOW);
delay(200);
}
delay(1000);
}