더보기

버튼누를때마다 오프->빨강->블루->오프 반복

int ledred = 12;
int ledblue = 4;
int btn1 = 10;

int before = 0;
int btnCnt = 0;


void setup() {
  Serial.begin(9600);
  pinMode(ledred,OUTPUT);
  pinMode(ledblue,OUTPUT);
  pinMode(btn1,INPUT);
  
}
void loop() {
  

  int curBtn1 = digitalRead(btn1);
   Serial.print(curBtn1);
 Serial.print(" : ");
 Serial.print(before);
 Serial.print(" : ");
 Serial.println(btnCnt);

  if(curBtn1==1 && before==0){         

   before=1;
   btnCnt++;

   if(btnCnt==3){
    btnCnt=0;
   }
      
  }

  if(curBtn1 ==0){
    before = 0;
  }

  if(btnCnt==1){       
   digitalWrite(ledred,HIGH);
  }
  if(btnCnt==2){       
   digitalWrite(ledblue,HIGH);
  }
  if(btnCnt==0){       
   digitalWrite(ledred,LOW);
   digitalWrite(ledblue,LOW);
  }
}

 

2개의 LED를 버튼한개로 컨트롤 하기

int ledred = 12;
int btn1 = 10;

int before = 0;
int btnCnt = 0;

void setup() {
  Serial.begin(9600);
  pinMode(ledred,OUTPUT);
  pinMode(btn1,INPUT);
}

void loop() {
 int curBtn1 = digitalRead(btn1);
 Serial.print(curBtn1);
 Serial.print(" : ");
 Serial.print(before);
 Serial.print(" : ");
 Serial.println(btnCnt);

if(curBtn1==1 && before == 0){
    before=1;
    btnCnt++;

    if(btnCnt == 2){
      btnCnt = 0;
    }
    
}
if(curBtn1==0){
  before=0;
}

 if(btnCnt!=0){       
   digitalWrite(ledred,HIGH);
 }else{
  digitalWrite(ledred,LOW);
 }

 

}

int val(가변저항기) = analogRead(A0); -> 아날로그를 연결 할 때는 a0~a5에 연결 한다.

int value = map(val,0,1023,0,255);  //크기다른 두개를 동기화 해준다
   
   

int ledred = 11;
int ledblue = 4;
int btn1 = 10;

void setup() {
  Serial.begin(9600);
  
  pinMode(ledred,OUTPUT);
  
  
}
void loop() {
  int val =analogRead(A0);
  int value = map(val,0,1023,255,0);
   Serial.print(val);
   Serial.print(" : ");
   Serial.println(value);

   analogWrite(ledred,value);
}

버튼3개로 RGB LED 컨트롤 하기

int red =9;
int blue = 11;
int green =13;

int sw1=2;
int sw2=4;
int sw3=6;

void setup() {
  Serial.begin(9600);

  pinMode(red,OUTPUT);
  pinMode(blue,OUTPUT);
  pinMode(green,OUTPUT);
  pinMode(sw1,INPUT);
  pinMode(sw2,INPUT);
  pinMode(sw3,INPUT);
  
  
}
void loop() {
  Serial.print("sw1 : ");
   Serial.print(digitalRead(sw1));
    Serial.print(          "sw2 : ");
   Serial.print(digitalRead(sw2));
    Serial.print("         sw3 : ");
   Serial.println(digitalRead(sw3));

   if(digitalRead(sw1)==1){
    digitalWrite(red,HIGH);
    digitalWrite(green,LOW);
     digitalWrite(blue,LOW);
   }

    if(digitalRead(sw2)==1){
    digitalWrite(red,LOW);
    digitalWrite(green,HIGH);
     digitalWrite(blue,LOW);
   }

    if(digitalRead(sw3)==1){
    digitalWrite(red,LOW);
    digitalWrite(green,LOW);
     digitalWrite(blue,HIGH);
   }
}

+ Recent posts