结合下图,说明UART的工作原理。
UART提供三个独立的异步串行I/O口,他们可以运行于中断模式或者DMA模式,也就是说UART可以产生中断请求或者DMA请求,以便在CPU和UART之间传输数据。每个UART通道包含两个用于接收和发送数据的16字节的FIFO缓冲寄存器。
S3C2410A的每个UART由波特率发生器,发送器,接收器以及控制单元组成,波特率发生器可以由PCLK或UEXTCLK提供时钟。发送器和接收器包含16字节的FIFO和数据移位器。
数据被写入FIFO,然后在发送之前拷贝发送移位器中。接下来数据通过发送数据引脚(TxDn)被移出。同时,接收到的数据从接收数据引脚(RxDn)移入,然后从移位器拷贝到FIFO中。