UART接口简介_uart接口速度

UART接口简介_uart接口速度UART即通用异步收发传输器(UniversalAsynchronousReceiver/Transmitter),它是一种串行通信的物理接口形式。它将要传输的资料在串行通信与并行通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连结上。一、UART硬件连接UART有4个pin(VCC,GND,RX,TX),用的TTL电平,低电平为0(0V),高电平为1(3.3V或以上)。如下图:引脚介绍:…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

    UART即通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),它是一种串行通信的物理接口形式。它将要传输的资料在串行通信与并行通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连结上。

    一、UART硬件连接

    UART有4个pin(VCC, GND, RX, TX), 用的TTL电平,  低电平为0(0V),高电平为1(3.3V或以上)。如下图:

    1-20112R22922405.png

    引脚介绍:

    • VCC:供电pin,一般是3.3v,在我们的板子上没有过电保护,这个pin一般不接更安全

    • GND:接地pin,有的时候rx接受数据有问题,就要接上这个pin,一般也可不接

    • RX:接收数据pin

    • TX:发送数据pin

    二、UART通信简介

    UART最好的一点是它只使用两根线就可以在设备之间传输数据。在UART通信中,两个UART直接相互通信。发送UART将来自CPU等控制设备的并行数据转换为串行形式,并将其串行发送到接收UART,接收UART然后将串行数据转换回接收设备的并行数据。在两个UART之间传输数据只需要两根线。数据从发送UART的Tx引脚流向接收UART的Rx引脚:

    UART接口简介(图2)

    UART以异步方式发送数据,这意味着没有时钟信号将发送UART的位输出与接收UART的位采样同步。发送UART不是时钟信号,而是将开始和停止位添加到正在传输的数据包中。这些位定义数据包的开始和结束,因此接收UART知道何时开始读取位。

    当接收UART检测到起始位时,它开始以称为波特率的特定频率读取输入位。波特率是数据传输速度的度量,以每秒位数(bps)表示。两个UART必须以大致相同的波特率运行。发送和接收UART之间的波特率只能相差10%左右。

    两个UART还必须配置为发送和接收相同的数据包结构。

    UART协议如下:

    UART接口简介(图3)

    空闲位:

    UART协议规定,当总线处于空闲状态时信号线的状态为‘1’即高电平。

    起始位:

    开始进行数据传输时发送方要先发出一个低电平’0’来表示传输字符的开始。因为当UART数据传输线不传输数据时,它通常保持在高电压电平。为了开始数据传输,发送UART将传输线从高电平拉至低电平一个时钟周期。当接收UART检测到高电压到低电压转换时,它开始以波特率的频率读取数据帧中的位。

    数据位:

    起始位之后就是要传输的数据。如果使用奇偶校验位,则它可以是5位到8位长。如果不使用奇偶校验位,则数据帧可以是9位长,一般都是8位。在大多数情况下,数据首先以最低有效位发送。

    奇偶校验位:

    数据位传送完成后,要进行奇偶校验,校验位其实是调整个数,串口校验分几种方式:

    • 1.无校验(no parity)

    • 2.奇校验(odd parity):如果数据位中’1’的数目是偶数,则校验位为’1’,如果’1’的数目是奇数,校验位为’0’。

    • 3.偶校验(even parity):如果数据为中’1’的数目是偶数,则校验位为’0’,如果为奇数,校验位为’1’。

    • 4.mark parity:校验位始终为1

    • 5.space parity:校验位始终为0

    停止位:

    数据结束标志,可以是1位,1.5位,2位的高电平。为了通知传输数据包的结束,UART发送端会将数据传输线从低电压驱动至高电压至少两位持续时间。

    波特率:

    数据传输速率使用波特率来表示,单位bps(bits per second),常见的波特率9600bps,115200bps等等,其他标准的波特率是1200,2400,4800,19200,38400,57600。举个例子,如果串口波特率设置为9600bps,那么传输一个比特需要的时间是1/9600≈104.2us。

    三、UART传输步骤

    3.1 发送UART从数据总线并行接收数据:

    UART接口简介(图4)

    3.2 发送UART将起始位,奇偶校验位和停止位添加到数据帧:

    UART接口简介(图5)

    3.3 整个数据包从发送UART串行发送到接收UART。接收UART以预先配置的波特率对数据线进行采样:

    UART接口简介(图6)

    3.4 接收UART丢弃数据帧中的起始位,奇偶校验位和停止位:

    UART接口简介(图7)

    3.5 接收UART将串行数据转换回并行并将其传输到接收端的数据总线:

    UART接口简介(图8)

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

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

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

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

(0)
blank

相关推荐

  • 程序设计语言概述_c语言程序设计基本概念

    程序设计语言概述_c语言程序设计基本概念许多各位转载请注明出处。http://www.cnblogs.com/hetao/archive/2010/03/17/1688388.html最近于2010年3月18日日修改。阅读指引读懂此文,需要

  • 【Oracle】OCR的备份和恢复之导出导入

    【Oracle】OCR的备份和恢复之导出导入

  • PHP审计之PHP反序列化漏洞

    PHP审计之PHP反序列化漏洞前言一直不懂,PHP反序列化感觉上比Java的反序列化难上不少。但归根结底还是serialize和unserialize中的一些问题。在此不做多的介绍。魔术方法

    2021年12月13日
  • 分布式架构设计之电商平台

    分布式架构设计之电商平台何为软件架构?不同人的答案会有所不同,而我认为一个好的软件架构除了要具备业务功能外,还应该具备一定的高性能、高可用、高伸缩性及可拓展等非功能需求。而软件架构是由业务架构和技术架构两部分组成,因为有了业务结构才会催生出软件架构,进而来满足业务上的需求,所以,在做软件架构设计时,需要分为业务架构设计和技术软件架构设计,二者不可分离哦!那么,接下来就以本人实际工作中的电商平台为例,进行说明电商平台架构设计,因为不同行业产品系统不同业务不同,而催生的系统软件的实现要求及架构设计就不同了!

  • linux16:网络信息收集脚本练习:按照状态筛选tcp连接,筛选链接数量top10的端口号

    linux16:网络信息收集脚本练习:按照状态筛选tcp连接,筛选链接数量top10的端口号要求1.筛选出tcp地址,按照状态进行计数,分类展示time_waitestablished2.按照同一个端口号连接的ip数量进行从高到低排序列出top103.输出top10端口对应的远程ip地址;端口之间以分割线分割,IP地址之间以逗号分割解答#!/bin/bash#name:/tmp/daxiong/netlook.shecho “”dateecho “”echo “—————————————————-

  • 〖Python零基础入门篇④〗- Pycharm插件安装与常用的插件

    〖Python零基础入门篇④〗- Pycharm插件安装与常用的插件插件是安装在特定程序上软件组件,以增强程序某项功能。一个好的IDE都会提供插件平台,允许第三方在遵循插件平台集成条款的前提下,使用插件平台对外提供的能力,扩展出更广泛更丰富的功能。PyCharm提供了大量商业与免费插件,内容涉及了方方面面,开发者根据工作的实际需要,可以在Marketplace搜索对应的插件,合理的使用正确插件,将极大的提高开发效率,并且保证代码质量。

发表回复

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

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