UART (Universal Asynchronous Receiver/Transmitter)
UART接口控制器:结构框图
通信协议:
先发送起始位,然后是最低有效数据位,最后是停止位。(图,表)
注:对于UART的讲解,可以结合同学上学期单片机红外对射通信的实验,讲解传输、编码(信道编码、信源编码)......
1、
红外对射管通过红外光线(某个频段,实验用的是940nm
)强度来表示0,1。
2、
根据信道传输的特点,我们进行编码,信道编码。
3、
针对我们要传输的信息,对信息进行编码,信源编码。我们在实验中如果要传输多个状态,单传0,1已不能满足,假如我们要传输计数的值,这个值最大是一个字节,那么就可以最大传256个计数。
4、 原则上我们可以基于这个信道实现TCP/IP整个协议栈。
扩展:红外通信协议,Infrared Data Association
通信协议设置 寄存器名称:ULCONn (UART Line Control Register
线性控制寄存器)。 寄存器偏移地址:0x0000。 寄存器功能:配置数据帧结构。 寄存器复位初值:0x00000000。
UCONn
寄存器名称:UCONn(UART Control Register 控制寄存器)。
寄存器偏移地址:0x0004。
寄存器功能:通信模式的基础设置。
寄存器复位初值:0x00000000。
(1)DIV_VAL =
UBRDIVn
+ (UDIVSLOTn中1的个数)/16
DIV_VAL 为除数因子。其计算方法详见 3.4.6.11 和3.4.6.12。
(2) S5PV210使用电平触发中断控制器。该位需要置为‘1’。
(3)如果UART没有达到FIFO触发电平,且DMA以FIFO模式接收数据时,在3个字时间内没有收到数据,会产生Rx中断(接收超时)。此时必须检查FIFO状态,读出FIFO中已收到的数据。
UFCONn(FIFO控制寄存器)
寄存器名称:UFCONn(UART FIFO Control Register FIFO控制寄存器)。
寄存器偏移地址:0x0008。
寄存器功能:配置接收数据缓存队列工作模式。
寄存器复位初值:0x00000000。
UTXHn(发送缓存寄存器)
寄存器名称:UTXHn (UART Transmit Buffer Register发送缓存寄存器)。
寄存器偏移地址:0x0020。
寄存器功能:发送数据缓存寄存器。
寄存器复位初值:随机值。
URXHn (接收缓存寄存器)
寄存器名称:URXHn (UART Recive Buffer Register接收缓存寄存器)。
寄存器偏移地址:0x0024。
寄存器功能:接收数据缓存寄存器。
寄存器复位初值:随机值。
工作于标准UART模式时,需要有RXD、TXD、CTS、RTS等4个信号引脚完成通信电路的互连。S5PV210的UART接口控制器,可以将制定引脚配置成上述功能。UART模式下所需信号与引脚配置间对应关系如下所示。