// // Adafruit_NeoPixel simple sketch
 
// #include <Adafruit_NeoPixel.h>
// #define LED_PIN     12
// #define NUM_LEDS    10
// #define BRIGHTNESS  255
// Adafruit_NeoPixel pixels(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);
 
// #define DELAYVAL 500 // Time (in milliseconds) to pause between pixels
 
// int loops = 0; //ループの回数を数える
 
 
// void setup() {
//   pixels.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
//   pixels.setBrightness(BRIGHTNESS);
//   Serial.begin(115200);
 
//   pixels.clear(); // Set all pixel colors to 'off'
// }
 
// void loop() {
//   pixels.clear(); // Set all pixel colors to 'off'
//   for (int i = 0; i < NUM_LEDS; i++) { // For each pixel...
//     //pixels.setPixelColor(i,255, 255, 255);
//     //   if (i == loops) {
//     //   pixels.setPixelColor(i, 255, 0, 0); // Red for loops
//     // } else if (i == 1) {
//     //   pixels.setPixelColor(i, 0, 0, 255); // Blue for 2nd LED
//     // } else if (i == 2) {
//     //   pixels.setPixelColor(i, 255, 255, 0); // Yellow for 3rd LED
//     // } else if (i == 3) {
//     //   pixels.setPixelColor(i, 255, 255, 0); // Yellow for 3rd LED
//     // } else if (i == 4) {
//     //   pixels.setPixelColor(i, 255, 255, 0); // Yellow for 3rd LED
//     // } else if (i == 5) {
//     //   pixels.setPixelColor(i, 255, 255, 0); // Yellow for 3rd LED
//     // } else if (i == 6) {
//     //   pixels.setPixelColor(i, 255, 0, 255); // Yellow for 3rd LED
//     // } else if (i == 7) {
//     //   pixels.setPixelColor(i, 255, 255, 0); // Yellow for 3rd LED
//     // } else if (i == 8) {
//     //   pixels.setPixelColor(i, 0, 255, 0); // Yellow for 3rd LED
//     // } else if (i == 9) {
//     //   pixels.setPixelColor(i, 0, 0, 0); // Yellow for 3rd LED
//     // } else {
//     //   pixels.setPixelColor(i, 0, 0, 0); // Green for others
//     // }
//     if (i == loops) {
//       pixels.setPixelColor(i, 255, 0, 0); // Red for loops
//     } else if (i == (loops + 1) % NUM_LEDS) {
//       pixels.setPixelColor(i, 0, 0, 255); // Blue for next LED
//     } else if (i == (loops + 2) % NUM_LEDS) {
//       pixels.setPixelColor(i, 255, 255, 0); // Yellow for next LED
//     } else {
//       pixels.setPixelColor(i, 0, 0, 0); // Black (off) for others
//     }
//   }

    
    
  
 
//   //pixels.setPixelColor(loops, 255,0,0);
//    //pixels.setPixelColor(loops, 0,255,0);
 
//   pixels.show();
//   delay(DELAYVAL); // Pause before next pass through loop
 
//   loops = ++loops % NUM_LEDS;
// }
// #include <Adafruit_NeoPixel.h>

// #define LED_PIN     12
// #define NUM_LEDS    10
// #define BRIGHTNESS  255

// Adafruit_NeoPixel pixels(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

// #define DELAYVAL 500 // Time (in milliseconds) to pause between pixels

// void setup() {
//   pixels.begin();
//   pixels.setBrightness(BRIGHTNESS);
//   Serial.begin(115200);
//   pixels.clear(); // Set all pixel colors to 'off'
// }

// void loop() {
//   pixels.clear(); // Set all pixel colors to 'off'
  
//   // 各LEDに異なる色を設定
//   for (int i = 0; i < NUM_LEDS; i++) {
//     if (i == 0) {
//       pixels.clear(); // 全てのLEDを消す
//       pixels.setPixelColor(i, 255, 0, 0); // Red for 1st LED
//       pixels.show(); // LEDを表示
//       delay(10); 
//     } else if (i == 1) {
//       pixels.setPixelColor(i, 0, 255, 0); // Green for 2nd LED
//     } else if (i == 2) {
//       pixels.setPixelColor(i, 0, 0, 255); // Blue for 3rd LED
//     } else if (i == 3) {
//       pixels.setPixelColor(i, 255, 255, 0); // Yellow for 4th LED
//     } else if (i == 4) {
//       pixels.setPixelColor(i, 255, 0, 255); // Magenta for 5th LED
//     } else if (i == 5) {
//       pixels.setPixelColor(i, 0, 255, 255); // Cyan for 6th LED
//     } else if (i == 6) {
//       pixels.setPixelColor(i, 255, 255, 255); // White for 7th LED
//     } else if (i == 7) {
//       pixels.setPixelColor(i, 128, 128, 128); // Gray for 8th LED
//     } else if (i == 8) {
//       pixels.setPixelColor(i, 255, 128, 0); // Orange for 9th LED
//     } else if (i == 9) {
//       pixels.setPixelColor(i, 0, 0, 0); // Black for 10th LED
//     }
//   }
  
//   pixels.show();
//   delay(DELAYVAL); // Pause before next pass through loop
// }
// Adafruit_NeoPixel simple sketch
 
// #include <Adafruit_NeoPixel.h>
// #define LED_PIN     12
// #define NUM_LEDS    10
// #define BRIGHTNESS  255
// Adafruit_NeoPixel pixels(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);
 
// #define DELAYVAL 500 // Time (in milliseconds) to pause between pixels
 
// int loops = 0; //ループの回数を数える
 
 
// void setup() {
//   pixels.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
//   pixels.setBrightness(BRIGHTNESS);
//   Serial.begin(115200);
 
//   pixels.clear(); // Set all pixel colors to 'off'
// }
 
// void loop() {
//   pixels.clear(); // Set all pixel colors to 'off'
//   for (int i = 0; i < NUM_LEDS; i++) { // For each pixel...
//     pixels.setPixelColor(i,255, 255, 255);
//   }
//   pixels.setPixelColor(loops, 255,0,0);
 
//   pixels.show();
//   delay(DELAYVAL); // Pause before next pass through loop
 
//   loops = ++loops % NUM_LEDS;
// }
#include <Adafruit_NeoPixel.h>

#define LED_PIN     12
#define NUM_LEDS    10
#define BRIGHTNESS  255

Adafruit_NeoPixel pixels(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Time (in milliseconds) to pause between pixels

int loops = 0; // ループの回数を数える

// 各LEDに適用する色のリスト(RGB形式)
uint32_t colors[NUM_LEDS] = {
  0xFF0000, // Red
  0xFFA500, // Orange
  0xFFFF00, // Yellow
  0x00FF00, // Green
  0x0000FF, // Blue
  0x800080, // Purple
  0xFFC0CB, // Pink
  0x00FFFF, // Cyan
  0x808080, // Gray
  0xFFFFFF  // White
};

void setup() {
  pixels.begin(); // NeoPixel strip オブジェクトの初期化(必須)
  pixels.setBrightness(BRIGHTNESS);
  Serial.begin(115200);

  pixels.clear(); // すべてのピクセルの色を 'off' に設定
}

void loop() {
  // 各LEDを順番に点灯しては消灯
  for (int i = 0; i < NUM_LEDS; i++) {
    pixels.clear(); // すべてのピクセルの色を 'off' に設定
    pixels.setPixelColor(i, colors[i]); // i番目のLEDに色を設定
    pixels.show(); // LEDを表示
    delay(DELAYVAL); // 指定時間待機
  }
}