명령에 따라 깜박이기
Coddy Arduino 여정의 입력 섹션에 포함된 레슨. 22개 중 18번째.
3을 입력하면 LED가 세 번 깜박인 다음 멈춰야 합니다. loop()는 이미 반복되므로, 횟수를 세도록 하면 됩니다. 아직 깜박여야 할 횟수를 변수에 저장하세요. loop()가 실행될 때마다 아직 깜박일 횟수가 남아 있으면 한 번 깜박이고 횟수를 하나 줄입니다.
int blinksLeft = 0;
void loop() {
// Serial 모니터에서 입력한 숫자로 blinksLeft를 설정합니다
if (blinksLeft > 0) {
// 한 번 깜박임
blinksLeft = blinksLeft - 1;
}
}blinksLeft가 0에 도달하면 if는 거짓이 되고, 다음 숫자가 입력될 때까지 LED는 꺼진 상태로 유지됩니다.
숫자 뒤의 줄 바꿈 문자 때문에 잠시 후에도 parseInt()는 여전히 0을 반환합니다. 이전처럼 0은 무시하세요. 그렇지 않으면 아직 남은 깜박임 횟수가 지워질 수 있습니다.
챌린지
중급Serial 모니터에 입력한 숫자만큼 13번 핀의 LED를 깜박이세요:
- 문자가 대기 중이면
parseInt()로 숫자를 읽고, 0보다 크면blinksLeft에 저장하세요 blinksLeft가 0보다 크면 한 번 깜박이고(켜짐 200 ms, 꺼짐 200 ms) 1을 빼세요
Run을 누르고, Serial 모니터에서 3을 전송한 다음 Check를 누르세요.
직접 해보기
const int ledPin = 13;
int blinksLeft = 0;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
// Serial 모니터에서 입력한 숫자로 blinksLeft를 설정한다
// blinksLeft가 0보다 큰 동안 한 번 깜빡이고 1을 뺀다
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
입력의 모든 레슨
직접 연습해 보세요: Arduino 플레이그라운드