
마이크로프로세서응용 ATmega128 USART 보고서
본 내용은
"
(A+) 마이크로프로세서응용 ATmega128 USART 보고서
"
의 원문 자료에서 일부 인용된 것입니다.
2024.11.06
문서 내 토픽
-
1. USART(Universal Synchronous and Asynchronous Receiver and Transmitter)USART는 동기 및 비동기 전송 모드에서 전이중 통신이 가능하고, 멀티 프로세서 통신 모드로 동작할 수 있으며, 높은 저밀도의 브레이트 발생기(Baud Rate Generator)을 내장하고 있습니다. USART는 전 이중 동작, 비동기 방식과 동기 방식 통신모드 지원, 마스터와 슬레이브 클럭 동기 동작, 고해상도 Baud Rate 발생기 내장, 다양한 데이터 비트와 스톱 비트 제공, 패리티 발생과 패리티 체크 지원, 디지털 Low Pass 필터가 내장된 Noise 필터링 기능, 멀티 프로세서 통신 모드 기능, 2배속의 비동기 통신 모드 기능, 에러 검출 기능 등의 특징을 가지고 있습니다.
-
2. USART 통신 방식USART 통신은 동기식과 비동기식 두 가지 방식으로 이루어집니다. 동기식 통신은 일정한 클럭에 동기하여 데이터를 송수신하는 방식이며, 비동기식 통신은 클럭 없이 데이터를 송수신하는 방식입니다. 동기식 통신은 높은 전송 효율이 필요한 경우에 사용되며, 비동기식 통신은 노이즈나 장거리 전송에 유리합니다. 또한 USART는 멀티프로세서 통신 모드를 지원하여 마스터 프로세서가 슬레이브 프로세서들에게 특정 어드레스를 전송하여 데이터를 전송할 수 있습니다.
-
3. USART 레지스터USART 포트는 UDR, UCSRnA, UCSRnB, UCSRnC, UBRRnH/L 레지스터로 구성됩니다. UDR 레지스터는 데이터 버퍼 역할을 하며, UCSRnA 레지스터는 송수신 동작 제어 및 상태 저장, UCSRnB 레지스터는 송수신 동작 제어 및 9비트 데이터 전송, UCSRnC 레지스터는 동작 모드 및 전송 제어 기능을 설정합니다. UBRRnH/L 레지스터는 보레이트를 설정하는 기능을 수행합니다.
-
4. 예제 코드 분석예제 코드 1에서는 USART 송신 기능을 구현하였습니다. 헤더 파일 포함, 어셈블리 코드 선언, Usart0_TX 함수 정의, USART 및 LCD 초기화, 무한 루프에서 USART 송신 및 LCD 출력 기능을 수행합니다. 예제 코드 2에서는 USART 수신 기능을 구현하였습니다. 헤더 파일 포함, 어셈블리 코드 선언, Usart0_RX 함수 정의, USART 및 LCD 초기화, 무한 루프에서 USART 수신 및 LCD 출력 기능을 수행합니다.
-
5. 오차 및 분석실험 결과가 나오지 않은 이유로는 소자의 불확실성, 점퍼선(와이어)의 저항 및 결함 등이 고려될 수 있습니다. 소자가 직접 기판에 납땜된 과정에서 손상되었을 가능성이 있으며, 점퍼선(와이어)에 존재하는 작은 저항과 결함으로 인해 이상적인 시뮬레이션 결과와 차이가 발생할 수 있습니다. 이러한 현실적인 요인들로 인해 오차가 발생한 것으로 분석됩니다.
-
1. USART(Universal Synchronous and Asynchronous Receiver and Transmitter)USART는 마이크로컨트롤러와 주변 장치 간의 직렬 통신을 위한 표준 인터페이스입니다. USART는 동기식 및 비동기식 통신 모드를 모두 지원하며, 다양한 데이터 전송 속도와 데이터 형식을 제공합니다. USART는 마이크로컨트롤러 시스템에서 널리 사용되며, 센서, 디스플레이, 무선 모듈 등 다양한 주변 장치와의 통신에 활용됩니다. USART는 간단한 구현과 높은 유연성으로 인해 임베디드 시스템 개발에 매우 중요한 역할을 합니다.
-
2. USART 통신 방식USART 통신은 동기식과 비동기식 두 가지 방식으로 구현됩니다. 동기식 USART 통신은 송신기와 수신기가 동일한 클록 신호를 공유하여 데이터를 전송합니다. 이 방식은 데이터 전송 오류가 적고 안정적이지만, 추가적인 클록 라인이 필요하다는 단점이 있습니다. 비동기식 USART 통신은 별도의 클록 신호 없이 송신기와 수신기가 미리 합의된 전송 속도로 데이터를 전송합니다. 이 방식은 구현이 간단하지만 전송 오류 가능성이 있습니다. 따라서 통신 환경과 요구사항에 따라 적절한 USART 통신 방식을 선택해야 합니다.
-
3. USART 레지스터USART 통신을 구현하기 위해서는 USART 레지스터를 적절히 설정해야 합니다. 주요 USART 레지스터로는 USART 제어 및 상태 레지스터(UCSR), USART 데이터 레지스터(UDR), USART 보레이트 레지스터(UBRR) 등이 있습니다. UCSR 레지스터는 USART 동작 모드, 데이터 길이, 정지 비트 수 등을 설정하며, UDR 레지스터는 송수신 데이터를 저장합니다. UBRR 레지스터는 보레이트 설정을 통해 통신 속도를 결정합니다. 이러한 USART 레지스터를 적절히 구성하여 USART 통신을 안정적으로 구현할 수 있습니다.
-
4. 예제 코드 분석USART 통신을 구현하는 예제 코드를 분석해 보면 USART 레지스터 설정, 송수신 함수 구현, 인터럽트 처리 등 USART 통신의 핵심 요소를 확인할 수 있습니다. 예를 들어, UCSR 레지스터를 통해 USART 동작 모드와 데이터 형식을 설정하고, UDR 레지스터를 이용하여 데이터를 송수신합니다. 또한 USART 인터럽트를 활용하여 비동기식 통신을 구현할 수 있습니다. 이러한 예제 코드 분석을 통해 USART 통신의 원리와 구현 방법을 이해할 수 있습니다.
-
5. 오차 및 분석USART 통신에서는 다양한 오차 요인이 발생할 수 있습니다. 가장 대표적인 오차는 보레이트 오차로, 송신기와 수신기의 클록 주파수 차이로 인해 발생합니다. 이를 해결하기 위해 UBRR 레지스터를 적절히 설정하여 보레이트 오차를 최소화해야 합니다. 또한 노이즈, 신호 반사, 전압 변동 등의 요인으로 인한 데이터 전송 오류도 발생할 수 있습니다. 이러한 오차 요인을 분석하고 적절한 대응 방안을 마련하는 것이 USART 통신 구현의 핵심입니다.
-
[Ayeun] 마이크로프로세서응용 2주차 결과보고서 마프(ATmega128설명) 5페이지
마이크로프로세서응용 결과보고서제목2주차 결과보고서학과전자공학과학번성명제출일2018. 09. 17확인핀 맵#실험에 사용한 회로 Pin의 분석1. RESET(20)입력단자로 1레벨이 입력되면 리셋되어 PC는 일반적으로 0번지를 가르키고 0번지부터 프로그램이 시작된다. 리셋시 대부분의 레지스터는 0으로 된다.2. XTAL1, XTAL2(23,24)발진용 증폭기 입력 및 출력 단자3. Vcc(21,51)전원 입력 단자4. GND(22,53,63)그라운드 입력 단자5. 포트A(44~51)내부 풀업 저항이 있는 8비트 양방향 입출력 단자.외부...2018.12.22· 5페이지 -
[Ayeun] 마이크로프로세서응용 10주차 예비보고서 마프(USART) 12페이지
마이크로프로세서응용 예비보고서제목10주차 예비보고서학과전자공학과학번성명제출일2018. 12. 05확인1. USART에 대한 이해#통신이란?통신 (Communications)전자통신(Telecommunications)은 원거리에 있는 송신기와 수신기가 신호를 주고받는 행위를 말한다. 전자 통신 시스템의 성능은 송신기와 수신기 사이 매체의 채널 특성과 노이즈등에 의해 결정된다.* 통신 이론 (Communication Theory). 통신채널 양 단 간에 신뢰적인 정보 신호의 전송에 관련되는 일체의 기술* 통신 요소 (Elements o...2018.12.22· 12페이지 -
[Ayeun] 마이크로프로세서응용 3주차 예비보고서 마프(ATmega128 I/O PORT,DDRX,PORTX,PINX레지스터,SINK,SOURCE 전류) 10페이지
마이크로프로세서응용 예비보고서제목3주차 예비보고서학과전자공학과학번성명제출일2018. 10. 10확인1. ATmega128 I/O PORT 구조PIN맵을 통한 I/O PORT- 데이터시트 첫 장에 I/O Port 53개라고 나와 있다.- PORT는 총 A,B,C,D,E,F,G 7개의 종류로 A~F까지는 8개, G포트만 5개로 이루어져 있다.(8x6 + 5 = 53)- 거의 알파벳별로 기능이 나뉜다.- 더 자세하게 포트 옆 괄호 안에 있는 내용을 참고하면 해당 핀의 기능을 정확히 알 수 있다.Ex) 61번에 해당하는 PF0(ADC0)는...2018.12.22· 10페이지 -
[마이크로 프로세서 실험 및 설계 준비 보고서] ATmega128에 대한 내용요약 8페이지
마이크로 프로세서 실험 및 설계준비 보고서Lab 2. ATmega 128구조와 입출력 포트제출일: 2010. 03. 25(木)학번: 0693024이름: 유상균1. ATmega128 주요 기능과 성능에 대해 기술하라.① 고성능, 저소비전력형의 8비트 MCU이다.② 진보된 RISC구조를 사용하여 최대 16MHz, 5.5V에서 동작한다.③ 133종의 명령 세트를 가지며, 대부분은 1클록 사이클에 실행된다.④ 32개의 8비트 범용 작업 레지스터를 가지며, 2사이클에 실행되는 곱셈기와 많은 I/O제어용 레지스터를 가지고 있다.⑤ 123KB의...2010.03.17· 8페이지 -
GPIO 입출력제어 예비보고서 25페이지
2주차 실험(4) 예비보고서제 3장 GPIO 입출력제어제 3장 GPIO 입출력제어1. HBE-MCU-Multi 구동(1) HBE-MCU-Multi란?8-bit 기반의 독립 모듈 마이크로컨트롤러 종합 실습 장비이다. MCU(Micro Controller Unit)는 제품의 다양한 특성을 컨트롤하는 역할을 하는 전용 프로세서이다. ATmega128, 89C51, PIC, Cortex-M3 디바이스를 각각 탈착이 가능한 커넥터 구조의 모듈로 마이크로컨트롤러의 학습을 가능하게 해준다. 실험(4)에서 우리가 다루게 될 것은 ATmega128...2017.04.02· 25페이지