Step-by-Step

[Embedded] UART 본문

임베디드/Embedded C

[Embedded] UART

희주(KHJ) 2024. 9. 24. 17:06

UART

  • Universal Asynchronous Receiver & Transmitter
  • 병렬 데이터의 형태를 직렬 방식으로 전환하여 데이터를 전송하는 컴퓨터 하드웨어의 일종
  • UART의 U는 범용, 즉 자료 형태나 전송 속도를 직접 구성할 수 있고 실제 전기 신호 수준과 방식이 일반적으로 UART 밖의 특정한 드라이버 회로를 통해 관리를 받음
  • 비동기 통신으로, 동기 신호가 전달되지 않기 때문에 수신 쪽에서 동기 신호를 찾아내 데이터의 시작과 끝을 시간적으로 알아 처리할 수 있도록 약속되어 있음

 

 

USART

  • Universal Synch, Asynchronous Receiver & Transmitter
  • UART 에서 USRT를 추가한 형태
  • USRT(범용 동기화 송수신기) : 자체 클럭 신호를 추가로 사용하여 정해진 속도로 수신 데이터로부터 비트 구간을 구분하고 비트의 논리 상태를 결정하여 데이터 통신을 하는 것

 

 

데이터 송수신 형태

  • 시작 비트 : 통신의 시작으로, 한 비트의 시간 길이만큼 유지
  • 데이터 비트 : 5~8 비트의 데이터 전송을 진행. bit의 수는 해당 레지스터 설정에 따라 결정
  • 패리티 비트 : 오류를 검증하기 위한 parity 값을 생선하여 송신하고, 수신쪽에서 오류 판단 (짝수/홀수/사용안함 중 선택)
  • 종료 비트 : 통신 종료를 알림. 세 가지 정해진 비트 만큼 유지해야 한다. (1/1.5/2비트로 해당 레지스터 설정에 따라 결정)

 

RS232

UART를 이용한 가장 일반적인 비동기 통신 방식

RTS (Request to Send) 송신 측에서 데이터를 보내기 전에 사용.
송신 장치가 수신 장치에 데이터를 보내기 위해 준비가 되었음을 알리는 신호.
CTS(Clear to Send) 수신 측에서 RTS 신호에 응답하는 신호.
송신 측에 데이터를 보낼 수 있음을 알림.
데이터 전송을 시작하기 전에 충돌을 방지하는데 도움이 됨.
DSR(Data Set Ready) 수신 장치가 준비되었음을 송신 장치에게 알리는 신호.
보통 모뎀과 같은 데이터 통신 장치에 사용됨.
DTR(Data Terminal Ready) 송신 장치가 데이터 통신을 시작할 준비가 되었음을 나타내는 신호.
수신 장치가 DTR 신호를 감지하면, 데이터 전송을 시작할 수 있음

해당 신호들은 주로 직렬 통신에서 데이터의 전송 상태를 제어하고, 충돌을 방지하기 위해 사용됨.

 

 

 

 

'임베디드 > Embedded C' 카테고리의 다른 글

[Embedded] DMA  (0) 2024.09.26
[C] 매크로 #define  (0) 2024.09.24
[Embedded] 구조체 멤버 메모리 할당 #Pragma  (0) 2024.09.06
Comments