시리얼 출력

시리얼 출력

이 문서에서는 아두이노에서 시리얼(Serial) 출력을 사용하는 방법에 대해서 다룬다.

시리얼(Serial) 통신

시리얼 통신은 한 개 또는 두 개의 전송 라인을 사용하여 데이터를 송수신하는 통신 방법으로, 한 번에 하나의 비트씩 데이터를 지속적으로 주고 받는다.

아두이노에서도 PC와 연결된 시리얼을 통해 메시지 출력이 가능하며 사용 방법은 다음과 같습니다.

Serial.print("내용");//이어서 출력
Serial.println("내용");//한 줄마다 출력

예제

void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.println("Hello Arduino");
  delay(1000);
}

컴파일

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

업로드

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

시리얼 모니터 확인

툴 메뉴의 시리얼 모니터를 선택하거나 Ctrl+Shift+M을 눌러 시리얼 모니터를 실행한뒤 출력 결과를 확인한다.

지속적으로 Hello Arduino 메시지가 출력되는 것을 확인할 수 있다.

코드 설명

Serial.begin(9600);

공식 문서 보기

데이터 전송 속도를 설정한다. 전송속도는 초당 전송되는 비트(bit)의 크기이며, 일반적으로 9600이라는 값을 많이 사용한다. 연결된 장비의 전송과 수신 속도가 동일해야 한다는 특징을 가진다. 9600비트로 설정하면 1초당 1.2킬로바이트(KB)의 데이터 전송을 수행한다.

Serial.println("Hello Arduino");

공식 문서 보기 연결된 시리얼 포트로 ASCII Text를 \r, \n과 함께 전송한다. \r은 carriage return을 수행하며 커서를 줄의 처음으로 이동시키고, \n은 new line의 작업을 수행하며 커서를 다음 줄로 이동시키므로 결국 엔터키를 누른것과 같은 효과가 발생한다. 위의 명령은 단순하게 Hello Arduino라는 글자를 출력하며, 숫자의 경우 진법을 바꾸어 출력이 가능하다.

Serial.println(100);//100
Serial.println(100, DEC);//100
Serial.println(100, HEX);//64
Serial.println(100, OCT);//144
Serial.println(100, BIN);//1100100
delay(1000);

delay 함수는 시간을 지연시키는 역할을 하며, 내부에 밀리초(ms)를 설정하여 지연시간을 정한다. loop 함수는 반복적으로 실행되므로 delay함수를 통해 실행간격을 조절할 수 있다.

Last updated