跑馬燈

 // 定義 LED 接腳的範圍(修改 endPin 為 5)

const int startPin = 2;

const int endPin = 5;      // 修正為 4 顆燈

const int delayTime = 200; // 燈光閃爍間隔時間 (毫秒)


void setup() {

  // 使用 for 迴圈將 Pin 2 ~ 5 全部設定為輸出模式

  for (int i = startPin; i <= endPin; i++) {

    pinMode(i, OUTPUT);

  }

}


void loop() {

  // 正向跑馬燈:從 Pin 2 亮到 Pin 5

  for (int i = startPin; i <= endPin; i++) {

    digitalWrite(i, HIGH);  // 點亮目前的 LED

    delay(delayTime);       // 等待一段時間

    digitalWrite(i, LOW);   // 熄滅目前的 LED

  }


  // 反向跑馬燈:從 Pin 4 亮回 Pin 3 (避免兩頭重複重疊)

  for (int i = endPin - 1; i > startPin; i--) {

    digitalWrite(i, HIGH);

    delay(delayTime);

    digitalWrite(i, LOW);

  }

}






留言