欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

STM32的USART

程序员文章站 2024-02-22 09:53:26
...

USART:Universal Synchronous/Asynchronous Receiver/Transmitter通用同步异步收发器(STM32中就是这个)

UART:通用异步收发器,

当进行异步通信时,两个是没有区别的,区别在域USART比UART多了同步通信功能,这个同步通信功能可以把USART当做SPI来用,比如用USART来驱动SPI设备。USART支持同步模式,这时需要同步时钟信号USART_CK,也就是说USART和UART的区别之一就是能提供主动时钟,通常情况同步信号很少使用,因此一般的单片机USART和UART是一样的,都是用异步模式。

STM32的USART的起始位应该不只是一个低电平,应该理解成下降沿加一个低电平。如下图,首先是检测一个下降沿,然后再进行两次三个点的采样。

STM32的USART

 

 

同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。  
异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。

同步是阻塞模式,异步是非阻塞模式。

其中SPI IIC为同步通信  UART为异步通信, usart为同步&异步通信。

 

单工、半双工、全双工 
 单工数据传输只支持数据在一个方向上传输;
 半双工数据传输允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;
 全双工数据通信允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。 
I2C是半双工,SPI的全双工,uart是全双工。
方便记忆的方法:I2C只有一根可以用来传输数据的线,SPI和UART都是有两根线可以传输,
相关标签: STM32