1. 概述
UART(Universal Asynchronous Receiver/Transmitter)是一种异步串口IO端口(Asynchronous Serial I/O port),每个SOC上可支持多个独立的UART。每个独立的UART的特性如下:
(1)每个UART port可基于中断或者DMA来工作,也就是UART可生成中断或者DMA请求,在内存和UART间进行数据的传输;
(2)可编程的波特率、红外传送(接收)、1~2个停止位、5~8 bit数据位宽、校验位(奇、偶校验);
(3)主要组成部分是控制单元,接收器,发送器,波特率生成器,结构框图如下
数据发送:数据被写到传输的传输队列中(FIFO(First Input First Output))中,之后数据会被copy到移位器(transmit shifter)中,最终数据移位器通过Tx pin传出。
数据接收:数据通过Rx pin将数据移入接收移位器中,接收移位器中的数据被传输到接收队列。
2.详细描述
(1)数据帧:UART数据帧包括起始位,5~8bit数据位,可选的校验位,1~2bit停止位。数据帧是可编程的,可以通过控制寄存器来进行设置。
(2&