[KungFu8位 MCU]

单片机常用通信协议1-UART介绍

[复制链接]
616|6
手机看帖
扫描二维码
随时随地手机跟帖
jerow|  楼主 | 2019-11-29 11:57 | 显示全部楼层 |阅读模式
UART
  通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)。
一、定义
  UART是一种通用串行数据总线,用于异步通信。该总线实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信。


使用特权

评论回复
jerow|  楼主 | 2019-11-29 11:57 | 显示全部楼层
二、通信协议

  UART作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接着一位传输。

  传输一帧中格式为:起始位、数据位、奇偶校验位、停止位、空闲位

  其中各位意义如下:

  起始位:先发出一个逻辑“0”的信号,表示传输字符的开始。

  数据位:紧接着从起始位后,数据位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。

  奇偶校验位:数据位加这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。

  停止位:是一个字符数据的结束标志。

  空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。

  波特率:是衡量数据传送速率的指标。表示每秒钟传送的符号数(symbol)。一个符号代表的信息量(比特数)与符号的阶数有关。例如传输使用256阶符号,每8bit代表一个符号,数据传送速率为120字符/秒,则波特率为120*8=960bit/s。

使用特权

评论回复
jerow|  楼主 | 2019-11-29 11:58 | 显示全部楼层
三、基本结构

  ①输出缓冲寄存器:它接收CPU从数据总线上送来的并行数据,并加以保存。

  ②输出移位寄存器:它接收从输出缓冲器送来的并行数据,以发送时钟的速率把数据逐位移出,即将并行数据转换位串行数据输出。

  ③输入移位寄存器:它以接收时钟的速率把出现在串行数据输入线上的数据逐位移入,当数据装满后,并行送往输入缓冲寄存器,即将串行数据转换成并行数据。

  ④输入缓冲寄存器:它从输入移位寄存器钟接收并行数据,然后由CPU取走。

  ⑤控制寄存器:它接收CPU送来的控制字,由控制字的内容,决定通信时的传输方式以及数据格式等。例如采用异步方式还是同步方式,数据字符的位数,有无奇偶校验,是奇校验还是偶校验,停止位的位数等参数。

  ⑥状态寄存器:存放着接口的各种状态信息,例如输出缓冲区是否空,输入字符是否准备好等。在通信过程中,当符合,某种状态时,接口种的状态检测逻辑将状态寄存器的相应位置“1”。

使用特权

评论回复
jerow|  楼主 | 2019-11-29 11:58 | 显示全部楼层
四、功能

  在手机设计和测试阶段被用来控制CPU与其余部分的讯息传送。

  UART是通用异步收发器(异步串行通信口)的英文缩写,它包括了RS232、RS449、RS423、RS422和RS485等接口标准规范和总线标准规范,即UART是异步串行通信口的总称。 而RS232、RS449、RS423、RS422和RS485等,是对应各种异步串行通信口的接口标准和总线标准,它规定了通信口的电气特性、传输速率、连接特性和接口的机械特性等内容。实际上是属于通信网络中的实体层(Physical Layer)的概念,与通信协议没有直接关系。而通信协议,是属于通信网络中的资料链接层(Data Link Layer)的概念。 COM是PC(个人计算机)上,异步串行通信口的简写。由于历史原因,IBM的PC外部接口配置为RS232,成为实际上的PC界默认标准。所以,现在PC机的COM均为RS232。若配有多个异步串行通信口,则分别称为COM1、COM2... 。

使用特权

评论回复
tfqi| | 2019-12-9 12:47 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
wiba| | 2019-12-9 12:50 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
zljiu| | 2019-12-9 12:54 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

72

主题

520

帖子

3

粉丝