10M+ 재고 있는 전자 부품
ISO 인증
보증 포함
빠른 배송
찾기 어려운 부품?
우리가 그것들을 공급합니다.
견적 요청

UART 기초: 배선, 타이밍, 보드 속도, 그리고 일반적인 문제

3월 27 2026
근원: Michael Chen
탐색: 2061

UART는 많은 임베디드 시스템에서 사용되는 일반적인 직렬 통신 방식입니다. 공유 클럭 라인 없이 한 비트씩 데이터를 전송하며, 동기화를 유지하기 위해 매칭 설정을 사용합니다. 신뢰할 수 있는 UART 링크는 올바른 배선, 보드 속도, 프레임 형식, 전압 레벨, 신호 타이밍에 의존합니다. 이 글은 UART의 작동, 설정, 용도 및 일반적인 문제에 대한 정보를 제공합니다.

Figure 1. UART

범용 비동기 수신-송신기(UART) 기본 개념

UART는 Universal Asynchronous Receiver-Mitter(Universal Asynchronous Receiver-Transmitter)의 약자입니다. 이는 연결된 장치 간에 데이터를 한 비트씩 전송하는 직렬 통신 인터페이스입니다. UART 블록은 많은 마이크로컨트롤러, 프로세서, 통신 칩, 임베디드 모듈에 내장되어 있습니다. 전송 시 병렬 데이터를 직렬 스트림으로 변환하고, 수신 시 들어오는 직렬 데이터를 다시 바이트로 변환합니다. UART는 공유 클럭 라인을 사용하지 않습니다. 대신, 두 장치는 통신 설정을 맞추고 각 데이터 프레임의 시작과 종료를 감지하여 동기화를 유지합니다.

UART가 여전히 흔한 이유

• 신호선은 몇 개만 사용합니다

• 직접 통신을 위해 설정이 간단합니다

• 많은 임베디드 장치에 포함되어 있습니다

• 직렬 터미널을 통한 읽기 가능한 출력 지원

UART 프레임과 타이밍은 어떻게 작동하나요?

UART 프레임의 구성 요소

Figure 2. Parts of a UART Frame

프레임 요소기능
시작 비트프레임의 시작
데이터 비트전송되는 값을 보유하세요
패리티 비트사용 시 기본 오류 검사
정지 비트프레임의 끝을 표시합니다
유휴 상태데이터가 전송되지 않을 때 라인을 높게 유지함

주요 UART 설정

배경통제 대상
보드율통신 속도
데이터 비트각 프레임의 값 비트 수
패리티패리티 검사가 추가되는지
정지 비트프레임 종료 형식
흐름 제어연결된 기기 간 데이터 페이싱

보드 속도는 비트 전송 속도를 결정합니다. 더 높은 보드 속도는 전송 속도를 높이지만, 더 정확한 타이밍과 더 깨끗한 신호 경로가 필요합니다. UART 통신은 양측의 프레임 설정을 맞추는 것도 중요합니다.

공통 보드율

보드 속도일반적인 사용
9600기본 터미널, 단순 모듈, 그리고 구형 시스템
19200–38400중속 통신
57600더 빠른 제어 및 진단 링크
115200콘솔 출력 및 디버깅

프레임 길이와 데이터 효율성

프레임 길이는 각 전송에서 얼마나 유용한 데이터를 운반하는지에 영향을 미칩니다. 두 개의 UART 링크는 동일한 보드 속도를 사용할 수 있지만, 프레임 형식이 다를 경우 유효 데이터 처리량이 달라집니다. 예를 들어, 8N1과 7E1은 프레임당 총 비트 수를 다르게 사용하므로 프레임당 페이로드 데이터 양이 동일하지 않습니다.

UART 배선, 전압 수준 및 유량 제어

Figure 3. UART Wiring, Voltage Levels, and Flow Control

기본적인 UART 연결은 세 가지 주요 신호를 사용합니다: TX, RX, 그리고 GND. 한 장치의 TX 핀이 다른 장치의 RX 핀에 연결되며, 신호 레벨이 올바르게 읽히려면 두 장치가 동일한 접지를 공유해야 합니다.

많은 마이크로컨트롤러와 모듈은 TTL 또는 CMOS UART 레벨을 사용하며, 보통 3.3V 또는 5V입니다. 구형 직렬 시스템은 RS-232를 사용할 수 있는데, 이는 전압 범위와 신호 방식이 달라 TTL UART와 직접 호환되지 않습니다. 이 표준들을 연결할 때 레벨 시프트 트랜시버가 사용됩니다.

일부 UART 링크는 한쪽이 들어오는 바이트를 충분히 빠르게 받아들이지 못할 때 데이터 손실을 방지하기 위해 플로우 제어도 사용합니다.

기본 UART 배선 규칙

• 한 장치의 TX가 다른 장치의 RX에 연결됩니다

• 한 장치에서 수신이 다른 장치의 TX에 연결됩니다

• 접지는 양쪽 모두에서 연결되어야 합니다

UART 전기 표준

유형일반적인 사용주요 요점
TTL/CMOS UART마이크로컨트롤러, 모듈, 개발 보드3.3V 또는 5V
RS-232레거시 시리얼 포트, 산업용 링크, PC 시리얼 연결다른 전압 범위와 신호 동작을 사용합니다

일반적인 유량 제어 방법

• 하드웨어 흐름 제어는 RTS 및 CTS 라인을 사용합니다

• 소프트웨어 흐름 제어는 XON과 XOFF 문자를 사용합니다

하드웨어 플로우 제어는 별도의 제어 라인을 사용하여 데이터 플로우를 관리합니다. 소프트웨어 흐름 제어는 선의 수를 줄이지만, 데이터 스트림 내에서 제어 문자를 사용합니다.

UART는 장치 내부에서 어떻게 작동하나요?

Figure 4. How UART Operates Inside a Device

장치 내부에서 UART 주변기기는 데이터 송수신을 처리하는 여러 부품을 포함합니다. 이 부분에는 송신 섹션, 수신 섹션, 시프트 레지스터, 상태 플래그, FIFO 버퍼가 포함됩니다. 데이터가 전송되면 소프트웨어가 UART에 바이트를 넣고, 하드웨어는 시작 비트, 선택적 패리티 비트, 정지 비트를 추가한 후 전체 프레임을 TX 라인을 통과시킵니다.

데이터가 수신되면 UART는 유효한 시작 비트가 있는지 RX 라인을 감시합니다. 그 후 올바른 시점에 신호를 샘플링하고, 바이트를 재구성하며, 프레임 형식을 확인하고, 소프트웨어를 나중에 읽을 수 있도록 데이터를 저장합니다.

UART 주변기기는 상태 및 오류 상태를 보고하며, FIFO 버퍼는 소프트웨어가 즉시 응답하지 않을 때 누락된 데이터를 줄이기 위해 몇 바이트를 저장합니다.

공통 UART 상태 및 오류 플래그

• 전송 버퍼 빈 상태

• 버퍼 가득 찬 수신

• 패리티 오류

• 프레임 오류

• 오버런 오류

임베디드 시스템에서 UART의 일반적인 활용

• 직렬 터미널 디버깅

• 마이크로컨트롤러와 모듈 간 통신

• 부트로더 및 펌웨어 업데이트 링크

• 간단한 명령 및 응답 인터페이스

• 데이터 로깅 및 진단

• 임베디드 보드 콘솔 접근

UART 설정, 테스트 및 문제 해결 

UART 링크를 설정하려면 호환 가능한 통신 설정과 신호 수준을 선택하는 것부터 시작합니다. 테스트는 링크가 올바르게 배선되었는지, 제대로 설정되어 있으며 유효한 데이터 프레임을 전송하는지 확인하는 데 도움을 줍니다.

링크 계획 및 장치 구성

연결을 하기 전에 보드 속도, 프레임 포맷, 전압 표준, 유량 제어 방식을 선택하세요. 그 다음 소프트웨어에서 UART 하드웨어를 활성화하고 필요한 버퍼나 FIFO 설정을 설정하세요. 클럭 정확도, 케이블 품질, 예상 데이터 전송률도 링크 성능에 영향을 미칩니다.

통신 검증

알려진 데이터 패턴이나 읽기 쉬운 텍스트를 보내 링크를 확인하세요. 직렬 단자, USB-UART 어댑터, 논리 분석기 또는 오실로스코프를 통해 프레임이 유효하고 전송 사이에 라인이 올바른 유휴 상태를 유지하는지 확인할 수 있습니다.

UART 문제 가이드

증상원인 가능성
무작위 또는 읽을 수 없는 문자잘못된 보드 속도 또는 프레임 설정
데이터 수신 없음TX/RX 역전, 접지 누락, UART 비활성화, 전압 레벨 오류
간헐적 오류소음, 긴 배선, 타이밍 불일치
프레이밍 또는 패리티 오류설정 불량 또는 신호 품질 저하
버스트 중 잃어버린 바이트오버런, 약한 버퍼링, 흐름 제어 없음

문제 해결 점검

• TX와 RX가 올바르게 교차하는지 확인

• 양측이 같은 땅을 공유하도록 보장할 것입니다

• 양쪽 끝에서 보드 속도와 프레임 형식 검증

• 신호 레벨이 TTL/CMOS 또는 RS-232인지 확인

• 타이밍 오류나 잡음이 의심되면 보드 속도를 낮춥니다

• 소프트웨어 내 UART 오류 플래그를 검토하세요

• 정상 단자 도구나 어댑터로 테스트

UART, SPI, I2C 비교 

Figure 5. UART, SPI, and I2C Compared

UART, SPI, I2C는 일반적인 직렬 통신 방식이지만, 작동 방식이 다릅니다. UART는 두 장치 간의 직접 연결을 사용하며 클럭 라인이 필요하지 않습니다. SPI는 더 빠른 통신을 위해 클럭과 별도의 데이터 경로를 사용합니다. I2C도 클럭을 사용하지만, 내장 주소 지정 기능을 통해 여러 장치가 동일한 버스를 공유할 수 있습니다.

인터페이스 비교

특징UARTSPII2C
시계 라인아니요
전형적인 위상수학포인트 투 포인트컨트롤러-주변기기공유 버스
복잡도낮게보통보통
내장 주소 지정아니요아니요
공통 강점단순성속도많은 기기에서 더 적은 배선

UART는 단순하고 직접적인 링크와 터미널 접근에 적합합니다. SPI는 고속 통신에 적합합니다. I2C는 여러 장치가 신호선이 적은 상태로 하나의 버스를 공유하는 경우에 적합합니다.

결론

UART는 하드웨어 복잡도가 낮으면서 단순하고 직접적인 통신을 제공하기 때문에 여전히 사용되고 있습니다. 성능은 매칭 설정, 올바른 TX 및 RX 배선, 접지 공유, 호환 전압 수준, 타이밍, 버퍼링, 오류 플래그의 적절한 처리에 달려 있습니다. 프레임 구조, 보드 속도, 흐름 제어, 일반적인 결함 원인을 이해하면 UART 링크가 왜 실패하는지, 그리고 임베디드 시스템에서 안정적인 통신이 어떻게 유지되는지 설명할 수 있습니다.

자주 묻는 질문 [FAQ]

UART가 동시에 송수신할 수 있나요?

네. UART는 전이중 통신을 지원하여, TX에서 데이터를 보내면서 동시에 RX로 수신할 수 있습니다.

UART에서 8N1은 무엇을 의미하나요?

8N1은 8비트 데이터 비트, 패리티 없음, 1 스톱 비트를 의미합니다.

UART가 여러 기기에 연결할 수 있나요?

직접적으로는 아니에요. UART는 주로 1:1 통신을 위해 사용되며 내장 주소 지정은 포함하지 않습니다.

UART에서 보우율이 비트레이트와 같은가요?

표준 UART에서는 그렇습니다. 각 기호가 하나의 비트를 담고 있기 때문에 동일하게 취급됩니다.

왜 USB-to-UART 어댑터를 사용하나요?

이 기능은 컴퓨터가 USB를 통해 UART 인터페이스와 통신할 수 있게 해줍니다.

UART에 암호화가 포함되나요, 아니면 고급 오류 수정이 포함되나요?

아니. UART는 암호화나 고급 오류 수정 기능을 자체적으로 포함하지 않습니다.