#define NUM_LEDS 12
int leds[NUM_LEDS] = {15, 2, 0, 33, 25, 26, 4, 16, 17, 5, 18, 19};

void setup() {
  Serial.begin(115200);
  Serial.println("Hello, ESP32!");
  for (int i = 0; i < NUM_LEDS; i++) {
    pinMode(leds[i], OUTPUT);
  }
}

void loop() {
  // Hiệu ứng 1: Bật tất cả các LED
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[i], HIGH);
  }
  delay(1000);
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[i], LOW);
  }
  delay(1000);

  // Hiệu ứng 2: Sáng toàn bộ LED rồi tắt từng cái
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[i], HIGH);
  }
  delay(1000);
  for (int i = NUM_LEDS - 1; i >= 0; i--) {
    digitalWrite(leds[i], LOW);
    delay(200);
  }

  // Hiệu ứng 3: Nhấp nháy toàn bộ LED
  for (int i = 0; i < 5; i++) {
    for (int j = 0; j < NUM_LEDS; j++) {
      digitalWrite(leds[j], HIGH);
    }
    delay(200);
    for (int j = 0; j < NUM_LEDS; j++) {
      digitalWrite(leds[j], LOW);
    }
    delay(200);
  }

  // Hiệu ứng 4: Chạy LED theo thứ tự sắp xếp thực tế
  int order[] = {1, 3, 5, 2, 0, 4, 6, 9, 11, 8, 7, 10}; // Thứ tự chạy LED
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[order[i]], HIGH);
    delay(100);
    digitalWrite(leds[order[i]], LOW);
  }

  // Hiệu ứng 5: Sáng tắt xen kẽ các LED
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[i], i % 2 == 0 ? HIGH : LOW);
  }
  delay(500);
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[i], i % 2 != 0 ? HIGH : LOW);
  }
  delay(500);

  // Hiệu ứng 6: Hiệu ứng sóng nước
  for (int i = 0; i < NUM_LEDS; i++) {
    digitalWrite(leds[i], HIGH);
    delay(100);
    digitalWrite(leds[i], LOW);
  }
  for (int i = NUM_LEDS - 1; i >= 0; i--) {
    digitalWrite(leds[i], HIGH);
    delay(100);
    digitalWrite(leds[i], LOW);
  }

  // Hiệu ứng 7: Hiệu ứng ngẫu nhiên
  for (int i = 0; i < NUM_LEDS; i++) {
    int randomLed = random(NUM_LEDS);
    digitalWrite(leds[randomLed], HIGH);
    delay(100);
    digitalWrite(leds[randomLed], LOW);
  }
}
$abcdeabcde151015202530354045505560fghijfghij