首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >UART和USART总结

UART和USART总结

作者头像
全栈程序员站长
发布2022-08-30 21:36:18
发布2022-08-30 21:36:18
9050
举报

大家好,又见面了,我是你们的朋友全栈君。

UART和USART的区别

同步和异步

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

UART与USART都是单片机上的串口通信,他们之间的区别如下:

首先从名字上看:

代码语言:javascript
复制
UART:universal asynchronous receiver and transmitter通用异步收/发器
USART:universal synchronous asynchronous receiver and transmitter通用同步/异步收/发器
代码语言:javascript
复制
  从名字上可以看出,USART在UART基础上增加了同步功能,即USART是UART的增强型,事实也确实是这样。但是具体增强到了什么地方呢?

其实当我们使用USART在异步通信的时候,它与UART没有什么区别,但是用在同步通信的时候,区别就很明显了:大家都知道同步通信需要时钟来触发数据传输,也就是说USART相对UART的区别之一就是能提供主动时钟。 USART:通用同步和异步收发器 UART:通用异步收发器 当进行异步通信时,这两者是没有区别的。区别在于USART比UART多了同步通信功能。 这个同步通信功能可以把USART当做SPI来用,比如用USART来驱动SPI设备。

同步是阻塞模式,异步是非阻塞模式。 其中SPI IIC为同步通信 UART为异步通信, usart为同步&异步通信。

单工、半双工、全双工

代码语言:javascript
复制
单工数据传输只支持数据在一个方向上传输;
 半双工数据传输允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;
 全双工数据通信允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。 

I2C是半双工,SPI的全双工,uart是全双工。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144590.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • UART和USART的区别
  • 同步和异步
  • 单工、半双工、全双工
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档