uart
  通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器,是电脑硬件的一部分。它将要传输的资料在串行通信与并行通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连结上。
  具体实物表现为独立的模块化芯片,或作为集成于微处理器中的周边设备。一般是RS-232C规格的,与类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口。在UART上追加同步方式的序列信号变换电路的产品,被称为USART(Universal Synchronous Asynchronous Receiver Transmitter)。
  UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信,如汽车音响与外接AP之间的通信,与PC机通信包括与监控调试器和其它器件,如EEPROM通信。
UART的功能计算机内部采用并行数据,不能直接把数据发到Modem,必须经过UART整理才能进行异步传输,其过程为:CPU先把准备写入串行设备的数据放到UART的寄存器(临时内存块)中,再通过FIFO(First Input First Output,先入先出队列)传送到串行设备,若是没有FIFO,信息将变得杂乱无章,不可能传送到Modem。它是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。
  作为接口的一部分,UART还提供以下功能:将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部并行数据的器件使用。在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中加入启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠标也是串行设备)。
  以处理计算机与外部串行设备的同步管理问题。有一些比较高档的UART还提供输入输出数据的缓冲区,比较新的UART是16550,它可以在计算机需要处理数据前在其缓冲区内存储16字节数据,而通常的UART是8250。如果您购买一个内置的调制解调器,此调制解调器内部通常就会有16550 UART。

USART
  USART:(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/异步串行接收/发送器USART是一个全双工通用同步/异步串行收发模块,该接口是一个高度灵活的串行通信设备。
USART特点
  1. 全双工操作(相互独立的接收数据和发送数据);
  2. 同步操作时,可主机时钟同步,也可从机时钟同步;
  3. 独立的高精度波特率发生器,不占用定时/计数器;
  4. 支持5、6、7、8和9位数据位,1或2位停止位的串行数据桢结构;
  5. 由硬件支持的奇偶校验位发生和检验;
  6. 数据溢出检测;
  7. 帧错误检测;
  8. 包括错误起始位的检测噪声滤波器和数字低通滤波器;
  9. 三个完全独立的中断,TX发送完成、TX发送数据寄存器空、RX接收完成;
  10.支持多机通信模式;
  11.支持倍速异步通信模式。

结构组成
  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的智能卡接口。

UART和USART的区别相关推荐

  1. UART 和 USART 的区别 == 通用异步收发传输器 通用同步/异步串行接收/发送器

    UART 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器,是电脑硬件的一部分.它将要传输的资料在串 ...

  2. UART和USART的区别(UART vs USART)

    很多工程师都知道UART和USART都是一样的,没有区别.但实际上,两者彼此不同,并且具有不同的属性. 这就是我在这里写一篇文章UART vs USART的原因.但在研究 UART 和 USART(U ...

  3. stm32中UART和USART的区别

    UART,全称为universal asynchronous receiver and transmitter,即通用异步收/发器: USART,全称为universal synchronous as ...

  4. uart与usart区别

    uart 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器,是电脑硬件的一部分.它将要传输的资料在串 ...

  5. UART与USART区别 (串口同步通信和异步通信)

    UART的同步通信和异步通信 https://blog.csdn.net/chipsea_mltsum/article/details/83897924 STM32-USART同步异步串行通讯 htt ...

  6. GPIO,I2C,SPI,UART,USART,USB的区别

    1.简单区别: 1) GPIO(General Purpose Input Output )为通用输入/输出,通用端口,总线扩展器, 利用工业标准I2C.SMBus™或SPI™接口简化了I/O口的扩展 ...

  7. STM32 UART/USART初始化时钟使能

    在学习STM32的过程中,我们通常会遇到使能时钟.例如在uart_init()的函数中,我们要使能串口: RCC->APB2ENR|=1<<4;//使能串口1的时钟 RCC-> ...

  8. 板内板间通信协议及接口(二)uart usart

    前面一节已介绍同步.异步.双工.半双工通信知识. 这节从uart及usart说起. USART(universal synchronous asynchronous receiver and tran ...

  9. 用USART接口代替SPI怎么做?

    如何把USART当做SPI用 刚开始学习时就知道USART可以和UART一样使用,但始终没有深究到底它多个同步功能有什么别的用,今天看到一篇文章,让我豁然开朗. 需要解答的问题: 它与UART有什么区 ...

最新文章

  1. 【SVN】svn“E155017工作副本的参考文件损坏、E200014文件校验和不匹配”的解决方法
  2. 推荐一位玩自动化的 Python 爱好者
  3. 游戏 AI 相关文章
  4. 知识体系地图模型:你是如何有效地学习?
  5. JS循环执行函数setInterval
  6. 工科计算机考研311分今年能上吗,2020年考研,工科345分,能进大连理工吗?学姐:热门专业悬...
  7. python练手经典100例-Python入门练手100例
  8. iOS 开发的9个超有用小技巧
  9. Nexus下载构件失败
  10. 产品使用报告(产品分析)
  11. 矩阵求导法则与性质,机器学习必备~
  12. Python:索引总结
  13. 用51单片机演奏Beyond《海阔天空》
  14. 英语四级和计算机一级算多少学分,大学英语四级多少分算过
  15. 在html中 标题单元格的标记是,html表格标题标签是什么
  16. fiddler抓APP的htpps請求,全部都是Tunnel to ......CONNECT...443的解决办法
  17. EI漏录的会议文章,如何申请EI数据库补录!
  18. OSPF规划两大模型:双塔奇兵、犬牙交错
  19. html设置旋转中心兼容ie,IE中的CSS旋转属性
  20. 集群的概述与定义,一看就会

热门文章

  1. hash算法(哈希)
  2. wen7系统下用vc6.0读取摄像头
  3. java计算机毕业设计校园爱心志愿系统源代码+数据库+系统+lw文档
  4. 贝克制药冲刺上市:资产负债率高,抗乙肝制剂产品收入和占比下滑
  5. 如何打印csdn的博客,支持谷歌、火狐浏览器
  6. osgearth设置osgEarth::Util::Viewpoint视口
  7. 前端excel导出适应中国式复杂报表
  8. flexible wincc 弹窗_wincc flexible弹出小窗口怎么做?
  9. Python 网页截图
  10. OpenJudge小组NOI / 1.1编程基础之输入输出10:超级玛丽游戏(C++C语言Python)