UART和USART的区别

UART和USART的区别UART定义  UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信,如汽车音响与外接AP之间的通信,与PC机通信包括与监控调试器和其它器件,如EEPROM通信。  通用异步收发传输器(UniversalAsynchronousReceiver/Transmitter),通常称作UART,是一种异步收发传输…

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

UART

定义
  UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信,如汽车音响与外接AP之间的通信,与PC机通信包括与监控调试器和其它器件,如EEPROM通信。
  通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器,是电脑硬件的一部分。它将要传输的资料在串行通信与并行通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连结上。

具体实物表现为独立的模块化芯片,或作为集成于微处理器中的周边设备。一般是RS-232C规格的,与类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口。在UART上追加同步方式的序列信号变换电路的产品,被称为USART(Universal Synchronous Asynchronous Receiver Transmitter)。
在这里插入图片描述

USART

USART:(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/异步串行接收/发送器USART是一个全双工通用同步/异步串行收发模块,该接口是一个高度灵活的串行通信设备。

结构组成

USART收发模块一般分为三大部分:时钟发生器、数据发送器和接收器。控制寄存器为所有的模块共享。

时钟发生器由同步逻辑电路(在同步从模式下由外部时钟输入驱动)和波特率发生器组成。发送时钟引脚XCK仅用于同步发送模式下,

发送器部分由一个单独的写入缓冲器(发送UDR)、一个串行移位寄存器、校验位发生器和用于处理不同桢结构的控制逻辑电路构成。使用写入缓冲器,实现了连续发送多帧数据无延时的通信。

接收器是USART模块最复杂的部分,最主要的是时钟和数据接收单元。数据接收单元用作异步数据的接收。除了接收单元,接收器还包括校验位校验器、控制逻辑、移位寄存器和两级接收缓冲器(接收UDR)。接收器支持与发送器相同的帧结构,同时支持帧错误、数据溢出和校验错误的检测。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

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的区别之一就是能提供主动时钟。如STM32的USART可以提供时钟支持ISO7816的智能卡接口。

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/144196.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 【记录】mac使用PyCharm中Python版本不对应的解决方法

    【记录】mac使用PyCharm中Python版本不对应的解决方法在使用PyCharm进行tensorflow学习时,发现mac中还有Python2.7的旧版本,并且说明建议使用新版本。经过搜索以及多个方法的试错,突然发现我用的是macOSBigSur,而惊喜的是已经出的新版本macOSMonterey已经把Python2.7移除了,也许是因为这个原因,在安装了Monterey后,就可以非常顺利的使用Python3.7以及anaconda和tensorflow2.0了。然而在之后的一天我使用anaconda运行py程序时发现了这个问题:Process

  • 阿里云wordpress配置免费ssl证书

    阿里云wordpress配置免费ssl证书本文最后更新于352天前,其中的信息可能已经有所发展或是发生改变。1、登录阿里云,选择产品中的ssl证书如果域名是阿里的他会自动创建dns解析,如果是其他厂商需要按照图片配置,等待几分钟进行验证点击审核,等待签发签发后根据需求下载所需证书我的wordpress是直接买的阿里轻量应用服务器,打开轻量应用服务器的控制台配置域名选择刚申请好的ssl证书在wordpre…

  • 怀揣Windows 10沙盒,放心“作死”「建议收藏」

    怀揣Windows 10沙盒,放心“作死”「建议收藏」话说,面对Windows沙盒这么好的一个功能,微软“砍刀部”这次好像格外地安静啊……

  • Solr集成Tomcat

    Solr集成Tomcat

  • ResNet 18 的结构解读「建议收藏」

    ResNet 18 的结构解读「建议收藏」现在很多网络结构都是一个命名+数字,比如(ResNet18),数字代表的是网络的深度,也就是说ResNet18网络就是18层的吗?其实这里的18指定的是带有权重的18层,包括卷积层和全连接层,不包括池化层和BN层。下面先贴出ResNet论文中给出的结构列表。对Pytorch中ResNet18网络的源码分析(这里),我画出了大致的网络结构图。可以看出,数字18=17个…

  • python+opencv图像模板匹配—多模板匹配

    python+opencv图像模板匹配—多模板匹配

发表回复

您的电子邮箱地址不会被公开。

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