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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js自动生成二维码_jquery 生成二维码无法识别

    js自动生成二维码_jquery 生成二维码无法识别生成二维码并保存为图片,点击下载此二维码简单实现的效果,如有更好的请指教利用jquery加jquery.qrcode //外部的js <scriptsrc=”./jquery/2.1.4/jquery.min.js”></script><scriptsrc=”./jquery/jquery.qrcode.min.js”></scri…

    2022年10月18日
    2
  • Lerp 实现匀速运动「建议收藏」

    Lerp 实现匀速运动「建议收藏」Mathf.Lerp的常见误用是Update(){Transform.position=newVector3(transform.position.x,targetPosition,Time.deltaTime);}首先它是这样工作的:每帧都重新获取物体当前的位置,计算物体和目标距离的差距,再按照当前帧的持续时间(当做一个百分比)来移动这个比例的位置。因此整体运动是缓动的,先

    2025年8月8日
    2
  • kali vim使用教程_kali命令

    kali vim使用教程_kali命令新手上路,vim编译器不会保存,不会退出,今天教大家如何使用vim编译器的指令vim编译器在使用是会在做左下角出现提示,通常插入表示的是可进行编辑,输入的意思,当你按下Esc键,就会取消编辑状态,但不会退出,你可以按着shift+;输出一个【:】然后输入【:wq!1.txt】已经有【:】的不用在输入【:】,w表示保存为q表示退出!表示强制在里面遇到的任何情况都可以按Esc即退出编辑状态可以按下小写【i】即可进入插入模式,也就是编辑状态下面我把…

    2022年9月28日
    2
  • 数据挖掘之异常检测

    数据挖掘之异常检测看了数据挖掘的异常检测部分,写一点笔记。1.0概述什么是数据挖掘:数据挖掘什么是异常检测:异常检测异常检测的目标是发现与大部分其他对象不同的对象。通常,异常对象被称为离群点,因为在数据的散布

    2022年7月1日
    25
  • VS2010安装离线MSDN「建议收藏」

    VS2010正式版不再有单独的MSDNLibrary安装选项,以至于很多同学找不到本地的MSDNLibrary来用,其实VS2010的ISO安装光盘里已经包含有MSDNLibrary,只不过要手动安装,方法如下:1、安装完VS2010后,在开始菜单中打开MicrosoftVisualStudio2010-VisualStudioTools–ManageHelpSet

    2022年4月7日
    143
  • iOS Dev (59) 高度自适应的UITextView

    iOS Dev (59) 高度自适应的UITextView

    2022年1月18日
    42

发表回复

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

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