USART结构
USART收发模块一般分为三大部分:时钟发生器、数据发送器和接收器。控制寄存器为所有的模块共享。
时钟发生器由同步逻辑电路(在同步从模式下由外部时钟输入驱动)和波特率发生器组成。发送时钟引脚XCK仅用于同步发送模式下,
数据发送器部分由一个单独的写入缓冲器(发送UDR)、一个串行移位寄存器、校验位发生器和用于处理不同桢结构的控制逻辑电路构成。使用写入缓冲器,实现了连续发送多帧数据无延时的通信。
接收器是USART模块最复杂的部分,最主要的是时钟和数据接收单元。数据接收单元用作异步数据的接收。除了接收单元,接收器还包括校验位校验器、控制逻辑、移位寄存器和两级接收缓冲器(接收UDR)。接收器支持与发送器相同的桢结构,同时支持桢错误、数据溢出和校验错误的检测。
USART特点
1.全双工操作
2.帧错误检测
3.数据溢出检测
4.多处理器通信模式
5.双倍速率的异步通信模式
6.高分辨率的波特率发生器
7.硬件的奇偶校验发生器和校验检查
8.在同步操作中可以以主从方式时钟工作
9.噪声滤波器包括起始位检测器和数字低通滤波器
10.发送完成,发送寄存器空,接受完成各自有相应的中断
11.支持每帧数据中有5,6,7,8或9个 数据位和1至2位停止位
USART工作模式
USART分为以下几种工作模式:
1.全双工异步模式
2.半双工同步主控模式
3.半双工同步从动模式