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);
}
$abcdeabcde151015202530354045505560fghijfghij