반응형

안녕하세요!
녹칸다입니다!

녹칸다의 산업용 아두이노(fa-duino)의 빠른 내용 전달을 위해서 코드와 작동결과만을 별도로 정리해보도록 하겠습니다~!
녹칸다의 산업용 아두이노 2편에서 5번예제를 정리해보도록 하겠습니다~!

 

이번 예제는 아래와 같은 목표가 있습니다~~!

1.적색버튼이 37번, 녹색버튼이 36번에 연결되어있고(입력)
2.적색램프가 38번, 황색램프가 39번, 녹색램프가 40번에 연결되어있을때(출력)
3.적색버튼을 누르면 적-황-녹 순으로 신호등이 작동하고!
4.녹색버튼을 누르면 녹-황-적 순으로 작동되도록 하시오!

 

예제에 사용한 소스코드는 아래와 같습니다~~~!

//적색버튼이 37번, 녹색버튼이 36번에 연결되어있고(입력)
//적색램프가 38번, 황색램프가 39번, 녹색램프가 40번에 연결되어있을때(출력)
//적색버튼을 누르면 적-황-녹 순으로 신호등이 작동하고!
//녹색버튼을 누르면 녹-황-적 순으로 작동되도록 하시오!

bool sw = false; //true면 녹황적, false면 적황녹

void setup() {
  //입력과 출력은 pinMode함수로 방향을 결정해주어야한다!
  pinMode(37,INPUT);
  pinMode(36,INPUT);
  pinMode(38,OUTPUT);
  pinMode(39,OUTPUT);
  pinMode(40,OUTPUT);
}

void loop() {
  //녹색버튼이 눌려지면~
  bool green_btn = digitalRead(36);
  bool red_btn = digitalRead(37);
  if(green_btn == HIGH){
    sw = true;
    delay(300);
  }
  if(red_btn == HIGH){
    sw = false;
    delay(300);
  }
  if(sw == true){
    digitalWrite(38,LOW);
    digitalWrite(39,LOW);
    digitalWrite(40,HIGH);
    delay(1000);
    digitalWrite(38,LOW);
    digitalWrite(39,HIGH);
    digitalWrite(40,LOW);
    delay(1000);
    digitalWrite(38,HIGH);
    digitalWrite(39,LOW);
    digitalWrite(40,LOW);
    delay(1000);
  }else{
    digitalWrite(38,HIGH);
    digitalWrite(39,LOW);
    digitalWrite(40,LOW);
    delay(1000);
    digitalWrite(38,LOW);
    digitalWrite(39,HIGH);
    digitalWrite(40,LOW);
    delay(1000);
    digitalWrite(38,LOW);
    digitalWrite(39,LOW);
    digitalWrite(40,HIGH);
    delay(1000);
  }  
}

작동결과는 녹칸다의 라이브방송에서 해당 예제를 진행했던 대략적인 부분을 링크걸도록 하겠습니다~~!

https://youtu.be/Y68Il4TQfAw?t=3370 

 

반응형
Posted by 덕력킹
,