int led[7] = {0,1,2,3,4,5,6}; //set pin number
void setup() //set pin led[1]~led[6] as OUTPUT
{
for(int i = 1;i <= 6;i++)
pinMode(led[i], OUTPUT);
}
void s1()
{
for(int i = 1;i <= 6;i++) //由1~6每200毫秒點亮一顆LED
{
digitalWrite(led[i], HIGH);
delay(200);
}
for(int i = 6;i >= 1;i--) //由6~1每200毫秒熄滅一顆LED
{
digitalWrite(led[i], LOW);
delay(200);
}
}
void s2()
{
for(int i = 3;i >= 1;i--) //由中間往外每200毫秒點亮一組LED
{
digitalWrite(led[i], HIGH);
digitalWrite(led[7-i], HIGH);
delay(200);
}
for(int i = 1;i <= 3;i++) //由外往內每200毫秒熄滅一組LED
{
digitalWrite(led[i], LOW);
digitalWrite(led[7-i], LOW);
delay(200);
}
}
void s3()
{
for(int i = 1;i <= 3;i++) //由外往內 間隔200毫秒閃爍一組LED
{
digitalWrite(led[i], HIGH);
digitalWrite(led[7-i], HIGH);
delay(200);
digitalWrite(led[i], LOW);
digitalWrite(led[7-i], LOW);
delay(200);
}
for(int i = 2;i >= 1;i--) //由內往外 間隔200毫秒閃爍一組LED
{
digitalWrite(led[i], HIGH);
digitalWrite(led[7-i], HIGH);
delay(200);
digitalWrite(led[i], LOW);
digitalWrite(led[7-i], LOW);
delay(200);
}
}
void flash()
{
for(int j = 1;j <= 2;j++) //執行兩次閃爍
{
for(int i = 1;i <= 6;i++) // 1~6全亮
{
digitalWrite(led[i],HIGH);
}
delay(200);
for(int i = 1;i <= 6;i++) //1~6全暗
{
digitalWrite(led[i],LOW);
}
delay(200);
}
}
void loop() {
s1();
flash();
s2();
flash();
s3();
flash();
}

Hubert's Coding Notes
Useful notes for CS people