UART通信协议

UART通信协议

UART ( universal asynchronous receiver-transmitter)是一种采用异步串行通信方式的通用异步收发传输器;它在发送数据时将并行数据转换成串行数据来传输,在接收数据时将接收到的串行数据转换成并行数据。UART串口通信需要两根信号线来实现,一根用于发送,另外一根接收。

1. 协议层

数据格式:
UART协议一帧数据由4部分组成:

  • 起始位(1bit)
  • 数据位(6/7/8bit)
  • 奇偶校验位(1bit)
  • 停止位(1bit/1.5bit/2bit)
    在这里插入图片描述
    当处于空闲状态时,总线为高电平,表示当前无数据进行传输;要发送数据时,首先将总线拉低,然后按照数据格式以低位在前,高位在后方式进行传输,发送完后随即将总线拉高。

这里拓展几种串口校验方式:
无校验(no parity):不使用校验。
奇校验(odd parity):如果数据位中“1”的数目是偶数,则校验位为“1”,如果“1”的数目是奇数,校验位为“0”。
偶校验(even parity):如果数据为中“1”的数目是偶数,则校验位为“0”,如果为奇数,校验位为“1”。
mark parity:校验位始终为1(不常用)。
parity:校验位始终为0(不常用)。

传输速率
串口通信的速率用波特率表示,它表示每秒传输二进制数据的位数,单位是bit/s (位/秒),简称bps;
常用的波特率有9600、19200、38400、57600以及115200等。

2. 接口

在UART通信中,两个UART直接相互通信,发送UART将来自CPU等控制设备的并行数据转换为串行形式,并将其串行发送到接收UART,接收UART然后将串行数据转换回接收设备的并行数据,此过程主要由2个接口完成:

  • TX - 数据发送接口
  • RX - 数据接受接口
  • GND - 接地
    在这里插入图片描述

3. 物理层

串口电平标准:

  • TTL电平的串口(3.3V)
  • RS232电平的串口(+5 ~ +12V为低电平,-12 ~ -5V为高电平)

串口按电气标准分包括:

  • RS-232-C:TXD/RXD/GND、15米/9600bps
  • RS-422:TX+/TX-/RX+/RX-/GND
  • RS485:A/B/G、1200米/9600bps
  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值