Arduino 입력 대기

Ammar Ali 2023년10월12일 Arduino Arduino IO
  1. Serial.avaiable()함수를 사용하여 입력을 기다리도록 Arduino 설정
  2. digitalRead()함수를 사용하여 Arduino가 입력을 기다리도록 설정
Arduino 입력 대기

이 튜토리얼에서는 입력을 기다리도록 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에 저장합니다.

튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다
작가: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook