0
나는 묻고 싶다. 시리얼 모니터를 사용하여 LED 프로젝트를하고 있습니다. 직렬 모니터 1의 키를 한 번 누르면 직렬 모니터 2의 두 번째 키를 누를 때까지 LED 1이 켜지고 LED 2가 켜집니다.ARDUINO : 홀드 값 & 시리얼 모니터
어떻게 할 수 있습니까? 지연()으로 ? 또는 hold()?
나는 묻고 싶다. 시리얼 모니터를 사용하여 LED 프로젝트를하고 있습니다. 직렬 모니터 1의 키를 한 번 누르면 직렬 모니터 2의 두 번째 키를 누를 때까지 LED 1이 켜지고 LED 2가 켜집니다.ARDUINO : 홀드 값 & 시리얼 모니터
어떻게 할 수 있습니까? 지연()으로 ? 또는 hold()?
다음 키 누르기를 결정할 때까지 걸리는 시간이 결정되지 않기 때문에 delay()
을 사용할 수 없습니다. 이 도움이
int ledPin1 = 8, ledPin2 = 9;
boolean flag1, flag2;
void setup()
{
Serial.begin(9600);
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
}
void loop()
{
if(Serial.available())
{
int c = Serial.read();
if(c == 49) { // 1 is pressed
flag1 = true;
flag2 = false;
}
else if(c == 50) { // 2 is pressed
flag2 = true;
flag1 = false;
}
}
if(flag1) {
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
}
if(flag2) {
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, HIGH);
}
delay(50);
}
희망 아래 입증 된 바와 같이
당신은 플래그를 사용할 수 있습니다.
http://stackoverflow.com/help/how-to-ask –