디지털 출력

디지털 출력

이 문서에서는 digitalWrite 함수를 이용한 디지털 출력에 대해서 살펴본다.

디지털 신호

디지털 신호는 HIGH(1)와 LOW(0) 두 가지 값을 가진다. 이 두 가지 값을 출력하여 LED를 끄고 켜는 등의 상태변화를 줄 수 있다.

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

컴파일

Ctrl+R 또는 스케치 메뉴의 확인/컴파일을 눌러 컴파일을 진행한다.

업로드

Ctrl+U 또는 스케치 메뉴의 업로드를 눌러 업로드를 진행한다.

실행 결과

아두이노 보드에 내장된 LED가 1초 주기로 깜빡이는 것을 확인할 수 있다.

코드 설명

pinMode(LED_BUILTIN, OUTPUT);

pinMode 함수

공식 문서 보기 pinMode 함수는 특정 핀에 대한 입출력 설정을 수행한다.

LED_BUILTIN

LED_BUILTIN은 보드상의 LED에 연결된 핀으로 대부분의 보드는 디지털 핀 13번에 연결되어 있다. 즉, 다음 두 코드는 같다.

pinMode(LED_BUILTIN, OUTPUT);
pinMode(13, OUTPUT);

OUTPUT

OUTPUT은 출력을 의미하는 값이며, pinMode 함수와 같이 사용하여 핀의 상태를 설정한다. INPUT으로 설정할 경우 핀의 상태가 입력으로 설정된다.

digitalWrite 함수

digitalWrite 함수는 OUTPUT 설정한 디지털 핀에 HIGH 또는 LOW 값을 출력하는 함수이다.

digitalWrite(LED_BUILTIN, HIGH);
digitalWrite(LED_BUILTIN, LOW);

HIGH를 출력할 경우 불이 켜지며, LOW를 출력할 경우 불이 꺼진다. LED가 아닌 다른 도구의 경우도 각각에 맞게 두 가지 상태 중 하나가 실행된다.

Last updated