const int ledPins[] = {17, 16, 4, 5, 18, 19, 21, 22, 23, 25, 26, 27};  // Các chân GPIO cho đèn LED

void setup() {
  // Thiết lập tất cả các chân LED là OUTPUT
  for (int i = 0; i < 12; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
}

void loop() {
  // Hiệu ứng LED chạy theo chu kỳ 
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], HIGH);  // Bật LED
    delay(100);  // Đợi 100ms
    digitalWrite(ledPins[i], LOW);   // Tắt LED
  }
  delay(1000);  // Đợi 1 giây giữa các hiệu ứng

  // Hiệu ứng LED sáng tất cả
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], HIGH);  // Bật tất cả LED
  }
  delay(1000);  // Giữ LED sáng trong 1 giây
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], LOW);   // Tắt tất cả LED
  }
  delay(1000);  // Đợi 1 giây

  // Hiệu ứng LED sáng đảo ngược
  for (int i = 11; i >= 0; i--) {
    digitalWrite(ledPins[i], HIGH);  // Bật LED
    delay(100);  // Đợi 100ms
    digitalWrite(ledPins[i], LOW);   // Tắt LED
  }
  delay(1000);  // Đợi 1 giây giữa các hiệu ứng

  // Hiệu ứng LED nhấp nháy
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], HIGH);  // Bật tất cả LED
  }
  delay(500);  // Giữ LED sáng trong 500ms
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], LOW);   // Tắt tất cả LED
  }
  delay(500);  // Giữ LED tắt trong 500ms

  // Hiệu ứng LED sóng
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], HIGH);  // Bật LED
    delay(100);  // Đợi 100ms
  }
  for (int i = 0; i < 12; i++) {
    digitalWrite(ledPins[i], LOW);   // Tắt LED
  }
  delay(500);  // Đợi 500ms trước khi lặp lại hiệu ứng
}
$abcdeabcde151015202530354045505560fghijfghij