UART和USART总结

UART和USART总结UART和USART总结

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

UART和USART的区别

同步和异步

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

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

首先从名字上看:

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

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

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

单工、半双工、全双工

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Caliburn.Micro Bootstrapper及IOC容器配置

    Caliburn.Micro Bootstrapper及IOC容器配置如果想深入学习Caliburn.Micro,Bootstrapper和IOC容器配置是重中之重,一定要弄清楚,否则很难理解CM的工作方式。配置Bootstrapper的意义如果在Boostrapper中不进行任何配置的话,Bootstrapper会首先把Bootstrapper所在程序集加载到AssemblySource.Instance中。而我们在Bootstrapper中只在Displa…

    2022年7月20日
  • clover引导修改默认启动

    不修改或配置不对默认就前面分区的windows了config.plist里如下就能默认启动macos了<key>Boot</key><dict><key>Arguments</key><string>nv_disable=1dart=0</string><key>DefaultL…

    2022年4月7日
  • Oracle数据库备份与恢复方案

    Oracle数据库备份与恢复方案任何数据库在长期使用过程中,都会存在安全隐患。对于数据库管理员来说不能仅寄希望于计算机操作系统的安全运行,而是要建立一整套的数据库备份与恢复机制。当任何人为的或是自然的灾难一旦出现,而导致数据库崩溃、物理介质损坏等,就可以及时恢复系统中重要的数据,不影响整个单位业务的运作。然而如果没有可靠的备份数据和恢复机制,就会带来系统瘫痪、工作停滞、经济损失等等不堪设想的后果。本文以ORACLE数据库为例,结

    2022年7月14日
  • ant power什么意思_ANT+是什么意思[通俗易懂]

    展开全部ANT+是个在运动设备中进行低功耗636f70793231313335323631343130323136353331333366306563数据传输的领导标准。ANT+是在ANT传输协议上的超低功耗版本,它是为健康、训练和运动专门开发的。ANT组织是一个开放的专门国际组织他们一起工作开发ANT无线协议,ANT无线是Dynastream的一个子部门,由Garmin拥有。该协议专门针对运动装…

    2022年4月6日
  • CentOS 7 yum 安装与配置 JDK

    CentOS 7 yum 安装与配置 JDKCentOS7yum安装JDK1、检查是否已安装JDK及卸载以下命令二选一,中括号选一即可yumlistinstalled|grep[java][jdk]rpm-qa|grep[java][jdk][gcj]执行命令出现如上图所示,需要卸载,反之即不用卸载JAVA环境yum-yremovejava-1.6.0-openjdk*…

    2022年6月4日
  • android游戏开发引擎_android开源app

    android游戏开发引擎_android开源app转自:http://blog.csdn.net/cping1982/article/details/5788921

    2022年9月19日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号