오랜지보드를 사용하고 있는 사용자입니다.
신호등 관련 공부해 보고 있습니다.
기본 구동은 됩니다. 다만 조건 하나가 더 붇었는데 잘동이 안되서요 추가 구매해서 해야 하는지?
아니면 함수가 잘못 되어 있거나 누락이 되어 있는지 도움 요청드립니다. ㅠㅠ
함수는 붙여 놓아 보겠습니다. 부탁드립니다.
원하는 조건은
전원이 온 상태에서는 파란불 10초후 주황불 2초 이후에는 빨간불 10초로 설정을 했습니다.(루프 상태로 설정)
위와 같은 상태로의 동작은 문제가 없습니다. 다만 별도의 스위치를 온 시켰을때 초록불과 주황불은 꺼지고 적색불만 온 상태가 되길 원하며 스위치 오프상태에서는 처음과 같은 루프 상태로 기본 동작이 되길 원합니다.
__________________________________________________________________________________________________________________
int sw = 6;
void setup() {
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(sw, INPUT_PULLUP);
}
void loop() {
if(digitalRead(sw) == LOW) {
digitalWrite(12, 0);
digitalWrite(13, 0);
digitalWrite(11, 1);
}
else {//초록불 점등
digitalWrite(13, 1);
delay(10000);
//초록불 꺼짐
digitalWrite(13, 0);
//주황불 점등 및 꺼짐
digitalWrite(12, 1);
delay(2000);
digitalWrite(12, 0);
//적색불 점등 및 꺼짐
digitalWrite(11, 1);
delay(10000);
digitalWrite(11, 0);
}
}
_____________________________________________________________________________________________________
|