UART   Universal Aynchronous Receiver Transmitter   범용 비동기 송수신기

(2019-06-01)

start 비트, stop 비트

1. UART컴퓨터 등의 직렬 포트 상에 위치하여 병렬-직렬 변환 등의 기능 또는 기능 수행 칩
     - 통상, 내부 UART 모듈 형태로 포함시키거나, 외부 외장형 UART 칩 형태로 끼워 사용

  ㅇ UART 컨트롤러라고도 하며, 직렬 통신을 위한 컨트롤러 역할을 함
     - 즉, 비동기 직렬 통신을 지원하는 인터페이스 역할


2. UART 칩 주요 기능 및 특징비트 전송/제어/일시기억
     - 비동기 시리얼 포트를 통해 일련의 비트들이 전송되도록,
     - 각 비트제어하고,
     - 수신된 각 비트를 일시적으로 기억하는 역할을 담당

  ㅇ 병렬-직렬 데이터 변환 기능
     - 처리 단위 : 8 비트의 문자 단위(1 바이트)
        . 송신부 : 변환 (병렬 -> 직렬)
           .. 병렬 8 비트(1 문자)를 비동기 직렬 8 비트의 흐름으로 변환
        . 수신부 : 역변환 (직렬 -> 병렬)
           .. 수신 완료되면, 수신 인터럽트를 발생시킴
        . 시프트 레지스터 기반의 직렬-병렬 변환 기능 수행
     - 처리 순서 : 데이터 바이트LSB 부터 송신  ☞ 네트워크 전송 순서(리틀 엔디안) 참조

  ㅇ 바이트 경계 구분
     - 매 바이트 마다, 양쪽에 start 비트,stop 비트를 두어, 바이트 경계를 구분하게 됨
        . start 비트 구간 : (1 비트 길이 동안) Low(0) 유지
           .. start 비트는, 수신측이 자신의 클럭을 사용하여 연이은 비트열을 샘플링하라는 의미
           .. 이 경우, 송수신 클럭 간 차이는 10% 정도 내외는 허용 가능
        . stop 비트 구간 : (1, 1.5. 2 비트 길이 중 선택, 송수신 쌍방 합의) High/idle(1) 유지

        

  ㅇ 송수신 전송속도 조정

  ㅇ 외부와 2개 데이터 선 사용
     - 외부 주변장치와는, 비동기 직렬 2개 데이터 선(송신,수신)으로 동작
        . 즉, 별도 클럭 없으며, 주변장치와 1:1 전이중 통신을 함
        . [참고] ☞ RS-232 핀(RS-232 신호선) 참조
     - 내부적으로는, 병렬 8 비트 (1 바이트)로 동작

  ㅇ CPU에게 알리는 인터럽트 발생 기능을 갖음
     - Transmit : 송신 완료시 발생
     - Receive : 수신 완료시 발생
     - Receive Timeout
     - Overrun Error
     - Break Error : start 빝 이후 규정 보다 길게 Low를 유지하면 발생
     - Parity Error
     - Framing Error

  ㅇ UART 자체로는 구동 전류가 작으므로, 
     - RS-232C로 멀리까지 신호 전달이 어려워,
     - 통상, RS-232C 전용 라인 드라이버(후치 증폭기)를 사용 함


3. UART 칩 例)

  ㅇ 통상, 오래전에 컴퓨터 마더보드 상에 위치했던 UART 칩 
     - (例, 8350 UART, 16550 UART 등 : 통상, 40 핀)
     - RS-232C 등의 인터페이스 역할을 담당하며,
        . 데이터를 내장 또는 외장 모뎀이나 기타 다른 직렬 장치들로 전송하는 역할

  ㅇ 비록, 대부분의 컴퓨터에서는 사라졌지만, 
     - 아직도 소형 임베디드 시스템이나 마이크로 컨트롤러에서는 많이 사용됨


[RS-232/422/485] 1. RS-232 2. RS-232 핀 3. RS-422 4. RS-485 5. UART 6. 널 모뎀 케이블 연결

 
        최근수정     요약목록     참고문헌