UART与USART知识

USART是Universal Synchronous Asynchronous Receiver Transmitter的简写,而UART为Universal Asynchronous Receiver Transmitter,最大区别在于后者没有同步模式。而UART属于全双工通信系统,当作为同步通信接口时需要切换为半双工模式,由于同步需要同步的clk接口。
UART的数据帧格式
一般包含其实bit、真实数据、校验位、停止位。一般在实际使用中有很多组合的配置,如有效比特长度、是否有奇或偶校验、起始比特、停止比特等是否存在及其个数等等。当然波特率、流控方式等也是可以配置的。
UART与USART知识_第1张图片
UART的流控方式
UART的流控用于使得不同速率的UART之间能够正常通信。通常有称为两线、四线的UART模式,两线的UART即只有TX、RX两个数据线,其实还带有GND地线、电源线等,而四线的UART模式,除了用于数据线外,还存在用来流程RTS\CTS接口,RTS表示request/ready to send,CTS表示 clear to send。流控方式可以分为软件流控、硬件流控两种方式,软件流控不需要额外的硬件接口开销,通过在数据线上发送特殊的字符来实现交互。
1、硬件流控方式
硬件流控方式上有两种接口方式,如下:第二种方式属于比较老的接线方式,均可进行双向的流控。方式一种设备对等,而在方式二中分为master和salver,分别为DCE(data circuit-terminal equipment)和DTE(data terminal equipment)。
UART与USART知识_第2张图片
UART与USART知识_第3张图片
2、软件流控方式
软件流控方式,主要通过在数据线上发送XON和XOFF来进行流控,在此种方式下只需要TX、RX和GND接线即可。用于控制的特殊字符同样在TX、RX上进行传送。当某段收到XOFF时,将停止发送,直到收到对端的XON才继续发送。
USART与UART主要区别
USART除了支持UART全双工的异步通信外,还支持半双工的同步通信(此时有slaver和master的差别)。
RS232接口格式
RS232是常用的串口,常见有9端口和25端口两类,细节内容暂时没有特别关注。
UART与USART知识_第4张图片
其接线方式如下:
UART与USART知识_第5张图片
关于watermark和LPUART
LPUART为low power UART的缩写,其实现较低速率的UART功能,同时具有sleep、stop模式,能够在不使用时关闭,以达到更低功耗的目的。waterwark水位用于在UART硬件FIFO模式时,设置相应阈值,当buffer中的数据量超过水位,则触发中断,通知软件进行数据处理。

你可能感兴趣的:(嵌入式系统,基础知识)