강좌 전체보기

.

.

시리얼 통신

무선 통신이 대세인 요즘 유선 시리얼 통신을 먼저 언급하는 이유는 시리얼 통신이 센서장치에 외부 센서나 모듈을 연결할 때 뿐 아니라 라즈베리파이나 핸드폰과 연결할 때도 사용이 가능하기 때문입니다. 예를들어 휴대용 카드-QR-바코드 리더기 같은 장치는 (무선으로도 가능하지만) 시리얼 통신을 통해 모바일 장치와 연결하면 보안상 이점도 있고 구현도 간단해집니다. 또한 3G/LTE, LoRa, Zigbee 등 통신 장치나 마이크로 컨트롤러를 라즈베리파이, 모바일 장치에 붙일 때도 유용합니다.

따라서 시리얼 통신을 통해 라즈베리파이, 모바일 폰과 통신하는 방법은 미리 짚고 넘어갈 필요가 있습니다.

시리얼 통신을 사용하기 위해 반드시 시리얼 통신 자체를 시간들여 공부해야 하는건 아닙니다. 시리얼 통신의 특징과 사용법만을 간략하게 정리하겠습니다.

  • 시리얼 통신은 대표적인 비동기식 직렬 통신 방법입니다.
  • 시리얼 통신은 단 2개의 선으로만 구성됩니다. 하나는 전송용(TX)이며 다른 하나는 수신용(RX) 입니다. 시리얼 통신을 사용하는 모든 모듈은 이 두 핀을 기본으로 가지고 있습니다.
  • RX-TX / TX-RX
    반드시!! 시리얼 통신 연결은 TX-RX 를 엇갈리게 해주어야 합니다. 다른 모듈의 일반적인 라인 연결 방법과 반대이기 때문에 실수하기 쉽습니다.

  • Baud Rate Mismatch
    가끔 데이터가 들어오긴 하는데 데이터가 깨지거나 수신 타이밍이 들쑥날쑥 한 경우가 있습니다. 많은 경우 이건 시리얼 통신 장치 양쪽의 Baud rate 가 맞지 않아서입니다. Baud rate는 양쪽이 합의한 통신 속도라 생각하면 쉽습니다.
  • Bus Contention
    시리얼 통신은 1:1 통신을 위해 디자인 되었습니다.
  • A universal asynchronous receiver/transmitter (이하 UART)
    UART 는 시리얼 통신을 담당하는 회로를 말합니다. UART 는 독립적인 회로로 존재하기도 하지만 일반적으로는 마이크로 컨트롤러에 탑재되어 있습니다. 마이크로 컨트롤러의 데이터시트를 보면 UART를 찾을 수 있습니다. 예로 아두이노 UNO의 경우 ATmega328 칩에 하나의 UART가 탑재되어 있습니다.

시리얼 통신에 대한 자세한 내용은 아래 링크를 참고하세요.

다음 장에서는 시리얼 통신을 이용해 라즈베리파이와 모바일 장치에 연결하는 방법을 집중 설명합니다.

.

강좌 전체보기

.