직렬 통신 프로토콜은 다른 장치로 데이터를 교환하는 마이크로 컨트롤러에 필수적입니다. 가장 일반적인 프로토콜은 UART, SPI 및 I2C입니다. 각 프로토콜에는 다양한 응용 프로그램과 하드웨어 구성에 적합한 고유 한 기능이 있습니다.

UART (Universal 비동기 수신기/Transmitter)

UART는 두 가지 데이터 라인을 사용하는 간단하고 비동기 프로토콜입니다. 전송 (TX) 및 수신 (RX)에 대한 하나. 그것은 널리 컴퓨터와 마이크로 컨트롤러 사이의 직렬 통신에 사용됩니다. UART는 구현하기 쉬운 시계 신호를 필요로하지 않습니다.

데이터 전송 속도와 형식은 일반적으로 9600에서 여러 Mbps에 이르기까지 보드율과 함께 구성 될 수 있습니다. UART는 단순성이 선호되는 짧은 거리 통신 및 응용 프로그램에 적합합니다.

SPI (연무 Peripheral 인터페이스)

SPI는 마스터 슬레이브 아키텍처를 사용하는 동기 프로토콜입니다. 그것은 4 개의 주요 신호를 요구합니다 : SCLK (시), MOSI (Master Out Slave In), MISO (Master In Slave Out) 및 SS (Slave Select). SPI는 고속 데이터 전송을 제공합니다.

센서, 메모리 장치 및 디스플레이와 통신에 이상적입니다. SPI는 전체 쌍방향 통신을 지원하며 동시 데이터 전송 및 리셉션을 허용합니다. 여러 장치가 별도의 노예 선택 라인을 사용하여 연결 될 수 있습니다.

I2C (유동 절연 회로)

I2C는 두 개의 양방향 라인을 사용하는 멀티 마스터, 멀티 슬레이브 프로토콜입니다 : SDA (data) 및 SCL (clock). 장치 또는 시스템 내에서 장거리 통신을 위해 설계되었습니다.

I2C는 동일한 버스에 다수 장치를, 각 유일한 주소로 지원합니다. 그것은 감지기와 같은 저속 신청을 위해 적당합니다, EEPROMs 및 순간 시계. 의정서는 배선을 간단하게 하고 핀 조사를 감소시킵니다.

Protocols의 비교

  • UART:, 포인트 투 포인트 통신에 적합, 단순, 비동기.
  • SPI: 빠른, 전체 듀플렉스, 전용 라인으로 여러 장치를 지원합니다.
  • I2C: 멀티데바이트, 저속, 최소 배선.