uart协议_UART协议简介
1UART
UART是异步串口通信协议,英文全称是Universal Asynchronous Receiver /Transmitter 即通用异步收发传输器,它不像SPI和I2C这样的通信协议,但在SOC中也是一种比较常用的IP。它最大的优点是仅用两根线进行通信,支持全双工,也就是一根线utx用于发送数据,另一根线用于接收数据。两个uart通信如下图所示:
其中发送UART可能来自控制设备(如CPU)的并行数据转换为串行形式,以串行方式将其发送到接收UART,然后由接收UART将串行数据转换回并行数据以用于接收设备。数据从发送UART的Tx引脚流到接收UART的Rx引脚。
2UART工作原理
UART是异步通信,这也就代表着没有时钟信号进行数据的采样同步,因此UART发送侧需要将开始和停止位添加到正在传输的数据包中,这些位定义了数据包的开始和结束,因此接收UART知道何时开始读取这些位。当接收UART检测到起始位时,它将开始以称为波特率的特定频率读取输入位。波特率是数据传输速度的度量,以每秒比特数(bps)表示。 两个UART必须以大约相同的波特率工作。发送和接收UART之间的波特率只能相差约10%。还必须将两个UART配置为发送和接收相同的数据包结构。
3UART是如何工作的
- 其他设备(例如CPU,内存或微控制器)通过数据总线将数据发送到UART。即UART 发送侧首先从数据总线接收数据。
- 数据以并行形式从数据总线传输到发送UART。发送UART从数据总线获取并行数据后,它将添加起始位,奇偶校验位和停止位,以创建数据包。
- 数据包在Tx引脚上逐位串行输出,接收UART在其Rx引脚上逐位读取数据包。
- 然后,接收UART将数据转换回并行形式,并删除起始位,奇偶校验位和停止位。
- 接收UART将数据包并行传输到接收端的数据总线
4UART帧结构
UART传输的数据被组织成数据包。每个数据包包含1个起始位,5至9个数据位(取决于UART),一个可选的奇偶校验位以及1个/1.5个或2个停止位。
起始位
UART数据传输线通常在不传输数据时保持在高电压电平。为了开始数据传输,发送UART在一个时钟周期内将传输线从高电平拉低到低电平。当接收UART检测到高电压到低电压转换时,它开始以波特率的频率读取数据帧中的位。
数据位
数据帧包含正在传输的实际数据。如果使用奇偶校验位,则可以是5位,最多8位。如果不使用奇偶校验位,则数据帧的长度可以为9位。在大多数情况下,数据首先以最低有效位发送。
校验位
接收方用于数据完整性和正确性检验。该位为可选项,可配置为奇校验/偶校验/无校验/校验位始终是1/校验位始终是0选项。
停止位
为了向数据包的结尾发出信号,发送UART在至少两个位持续时间内将数据传输线从低电平驱动到高电平。
5UART优缺点
优点
- 数据仅使用两根线
- 无需时钟信号
- 具有奇偶校验位以允许进行错误检查
- 发送接收协议简单
缺点
- 数据帧的大小最大为9位
- 传输速度较慢
- 每个UART的波特率必须在彼此的10%之内
uart协议_UART协议简介相关推荐
- (56)UART外设驱动协议(一)(第12天)
(56)UART外设驱动协议(一)(第12天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)UART外设驱动协议(一)(第12天) 5)技术交流 6)参考资料 ...
- 【计算机网络】网络层 : BGP 协议 ( BGP 协议简介 | BGP 协议信息交换 | BGP 协议报文格式 | BGP-4 常用报文 | RIP 、OSPF、BGP 协议对比 )
文章目录 一.路由选择协议分类 二.BGP 协议 简介 三.BGP 协议 信息交换过程 三.BGP 协议 报文格式 四.BGP 协议 特点 五.BGP-4 协议的 四种报文 六.RIP .OSPF.B ...
- UART串口通讯协议解析
UART串口通讯协议解析 概述 接口 通信协议 波特率 示例 最后 概述 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART ...
- UART 和 N_GSM协议 及 linux设备驱动TTY关系
UART 这个文章写得东西不少 https://blog.csdn.net/daocaokafei/article/details/113664078?utm_medium=distribute.pc ...
- 简介 传输层协议——UDP协议
UDP协议: UDP:User Datagram Protocol 用户数据报协议 UDP简介: UDP是一种面向无连接的传输层协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可 ...
- 现有P2P协议分类与简介
现有P2P协议分类与简介 http://blog.csdn.net/u012888602/article/details/48241165 (一) 常用p2p协议 一.Napster:世界上第一个大型 ...
- 【网络】浏览器输入URL到展示页面全过程(含互联网协议及HTTPS简介)
这里写自定义目录标题 前言 1.URL介绍 2.DNS查找 3.互联网协议 3.1 实体层 3.2 链路层 3.2.1 以太网协议 3.2.2 Mac地址 3.2.3 广播 3.3 网络层 3.3.1 ...
- 透析ICMP协议(一): 协议原理
透析ICMP协议(一): 协议原理 =============================== 这篇文章原创自bugfree/CSDN 平台: VC6 Windows XP ICMP简介: --- ...
- 纸鸢|工业物联网通讯协议Modbus协议详解
目录 Modbus简介 格式总览 从机地址 功能码和寄存器 PLC地址和Modbus协议地址 功能码总览 异常分析 Modbus简介 Modbus 是一种串行通信协议,是 Modicon 于 1979 ...
最新文章
- es6箭头函数中this
- 多线程中的指令重排问题
- Delphi - 我的代码之窗体移动
- 『原创』再谈用 php 实现域名 whois 信息查询
- redis哨兵主从不切换_Redis的三种模式:主从、哨兵、集群
- Download failed : Oracle JDK 7 is NOT installed,解决oracle jdk7的问题
- LINUX编译OPENJDK:The tested endian intarget (big) differs from the endian expected to be found in the
- android 4k 测试图片,高端4K测试图助4K电视进“测一下”时代
- 温度监视器的设计与制作
- 软件测试中的测试报告
- 计算机wifi共享怎么设置,电脑怎么共享wifi热点 电脑设置wifi热点教程
- 截止失真放大电路_每周经典电路分析:一个经典实际运放的内部电路分析(1)
- NOI2010 航空管制
- vue部署后饿了么组件的图片不见了
- Things3 3.13.13 一款优秀的GTD任务管理工具
- blender script mmd_tool 自动重命名刚体到合适的名字
- 发帖添加作者水印插件无法发帖问题-缺少GD库支持,php如何安装gd库-一颗优雅草科技伊凡
- 中金数据联手华为深入布局行业云
- 马云语录:骗子、疯子、狂人?
- 计算机科学个人陈述中文,计算机专业个人陈述范文