본문 바로가기

취미

USART

USART는 외부 디바이스와 직렬로 인터페이스를 통해 데이터를 송수신할 수 있게 해준다. 외부 디바이스는 다른 마이컴이 될 수 있고 PC도 될 수 있다. PC의 COM포트와 연결하기 위해서는 9핀 케이블과 데이터 전송의 레벨을 조절해 주는 전용 통신 칩이 추가로 필요하다.

범용 동기 수신 송신기(USART)로 데이터를 수신하거나 송신하는 방법에 대해 알아보자. USART를 제어하기 위한 레지스터로는 USART를 통해 보낼 데이터나 받은 데이터를 두는 USART I/O 데이터 레지스터(UDRn), USART 상태를 알 수 있는 USART 제어 상태 레지스터(UCSRnA, UCSRnB, UCSRnC) 그리고 데이터 통신의 속도를 결정하는 보레이트(Baud Rate)를 설정하는 USART 보레이트 레지스터(UBRRnL, UBRRnH)가 있다.

통신 속도를 결정해 주는 보레이트가 얼마만큼 가능한지는 마이컴에 부착될 수 있는 크리스탈이나 오실레이터의 속도에 의해 좌우된다. 보레이트 설정하는 방법으로 사용 크리스탈의 주파수를 계산식에 넣어서 나온 값을 UBRR에 넣을 수도 있지만, 데이터 시트에 예로 나와있는 표를 참조할 수도 있다.

USART로 데이터 송수신을 위한 순서는 UCSR에 송수신 인터럽트 및 방식을 설정하고, USART 보레이트 레지스터(UBRRnL, UBRRnH)를 설정하여 데이터 송수신 통신 속도를 선택한다. 그리고, 전역 인터럽트 플래그를 '셋'하여 인터럽트를 활성한 후, 그에 따른 USART 송수신 인터럽트 처리 루틴을 구성한다.

'취미' 카테고리의 다른 글

문리바  (0) 2010.04.28
A/D 컨버터 사용법  (0) 2010.03.22
야구의 불모지! 울산!  (2) 2009.10.19
송타미 화이팅  (0) 2009.07.13
황당한 게임차  (0) 2009.05.13