Arduino 입력 대기
Ammar Ali
2023년10월12일
이 튜토리얼에서는 입력을 기다리도록 Arduino를 설정하는 두 가지 방법에 대해 설명합니다. 한 가지 방법은 직렬 포트 또는 아날로그 핀용이고 다른 하나는 디지털 핀용입니다.
Serial.avaiable()
함수를 사용하여 입력을 기다리도록 Arduino 설정
직렬 포트에서 입력을 읽으려면 Serial.available()
함수를 사용하여 입력을 기다릴 수 있습니다. 이 함수는 직렬 포트에있는 바이트 수를 가져옵니다. 입력이 없으면 0을 반환합니다.
void setup() { Serial.begin(9600); }
void loop() {
while (Serial.available() == 0) {
}
int mydata = Serial.read();
}
위의 코드에서 직렬 포트에 입력이 없으면 Arduino가 루프에 갇혀 그대로 유지됩니다. 입력이 직렬 포트에 도착하면 루프가 중단되고 직렬은 Serial.read()
를 사용하여 데이터를 읽고mydata
변수에 저장합니다.
digitalRead()
함수를 사용하여 Arduino가 입력을 기다리도록 설정
디지털 핀에서 입력을 읽으려면 digitalRead()
함수를 사용하여 입력을 기다릴 수 있습니다. 이 기능은LOW
또는HIGH
인 디지털 핀의 디지털 값을 읽습니다.
int valPin = 0;
int inputPin = 7;
void setup() { pinMode(inputPin, INPUT); }
void loop() {
while (digitalRead(inputPin) != LOW)
;
{}
valPin = digitalRead(inputPin);
}
위의 코드에서 디지털 핀에 입력이 없으면 Arduino가 루프에 갇혀 그대로 유지됩니다. 입력이 디지털 핀에 도달하면 루프가 중단되고 직렬은digitalRead()
를 사용하여 데이터를 읽고 변수valPin
에 저장합니다.