工作一 : 一顆LED燈閃爍

const int led=13;
void setup() {
 pinMode(led,OUTPUT);
}

void loop() {
  digitalWrite(led,HIGH);
  delay(100);
  digitalWrite(led,LOW);
  delay(100);
}

工作二 : 4顆LED燈閃爍

const int led[]={10,11,12,13};
int i;
int j;
void setup(){
    for(i=0;i<4;i++){
    pinMode(led[i],OUTPUT);
    }
}
void loop(){
    for(i=4;i>-1;i--){
       digitalWrite(led[i],LOW);
    }
   digitalWrite(led[j],HIGH);
   delay(1000);
   j++;
   if(j==4  )
   j=0;
}

工作三:4顆LED左右閃爍

const int led[]={10,11,12,13};
int i;
int j=0;
int derect=0;
void setup(){
    for(i=0;i<4;i++){
    pinMode(led[i],OUTPUT);
    }
}
void loop(){
    for(i=4;i>-1;i--){
       digitalWrite(led[i],LOW);
    }
   digitalWrite(led[j],HIGH);
   delay(100);
   if(derect==0){
    if(j==3){
      derect=1;}
    else{j++;}
   }
  else if(derect==1){
    if(j==0){
      derect=0;
    }
      else{j--;}  
  }
}

工作四:PWM挖制LED(一顆)

const int led=13;
int brightness=0;
int lighten=5;
int direct=0;
void setup(){}
void loop(){
  analogWrite(led,brightness);
  delay(25);
  if(direct==0){
    brightness=brightness+lighten;
    if(brightness>=255){direct=1;}
    
  }
 else if(direct==1){
  brightness=brightness-lighten;
  if(brightness<=0){direct=0;}
  } 
}

工作五:PWM挖制LED向右移

const int led[]={10,11,12,13};
int i;
int brightness=0;
int lighten=5;
int direct=0;
void setup(){}
void loop(){
 while(1){
  analogWrite(led[i],brightness);
  delay(5);
  if(direct==0){
    brightness=brightness+lighten;
    if(brightness>=255){direct=1;}
  }
 else if(direct==1){
  brightness=brightness-lighten;
  if(brightness<=0){analogWrite(led[i],LOW);
                    direct=0;
                     i++;
                      if(i==4){
                               i=0;
                               }
                    }
                    }        
}
}

工作六:二組矩陣控制(水滴燈)

const int led[]={13,12,11,10};
const int ledCode[7][4]={
                 {255,000,000,000},
                 {100,255,000,000},
                 {050,100,255,000},
                 {005,050,100,255},
                 {000,005,050,100},
                 {000,000,005,050},
                 {000,000,000,005}};
               
int col;
int row;
void setup(){}
void loop(){
  for(row=0;row<8;row++){
    for(col=0;col<4;col++){
      analogWrite(led[col],ledCode[row][col]);
      delay(75);                  
    }
  }
}