加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 一、前言
    • 二、uart帧格式
    • 三、波特率、比特率
    • 四、速率计算
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

2分钟搞懂如何计算uart速率

08/19 09:20
1572
阅读需 4 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、前言

1960年代,DEC(Digital Equipment Corp)公司的Gordon Bell采用大约50个分离元件设计了一个电路板,发明了UART

时至今日,已经60多年,虽然在个人消费类电子产品中,UART已近乎绝迹;但在工业、科研、国防、航空/航天等领域,UART却无处不在。

很多从事多年嵌入式开发的老铁居然还不会根据波特率计算UART的速率,下面彭老师2分钟带你掌握计算方法。

二、uart帧格式

要证明速率的计算,必须搞清楚uart数据帧格式

其中各位的意义如下:

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

• 数据位:可以是5~8位逻辑“0”或“1”,如ASCII码(7位),扩展BCD码(8位),小端传输;

• 校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验) ;

• 停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平【通常为1位】;

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

例如我们传输数据0X33(00110011),那么对应的波形就是如下这样,因为是LSB在前,所以8位数据依次是11001100

由上图可得,

假设没有奇偶校验位,停止位为1位

要传输1个字节(8个bit)数据,那么实际硬件上需要传输10位(1个起始位,8个数据位,1个停止位)

如果有奇偶校验位,停止位为1位

要传输1个字节(8个bit)数据,那么实际硬件上需要传输11位(1个起始位,8个数据位,1个奇偶校验位,1个停止位)

三、波特率、比特率

1)波特率

UART速率,也称为波特率,是指数据在串行通信中每秒钟传输的位数(包含起始位、数据位、校验位、停止位)。

比如:115200波特率意思就是在二进制传输条件下每秒传输115200个比特。

2)比特率

比特率也叫信息传输速率,单位时间传递的平均信息量或比特数(只包含有效的数据位)。

比特率通常以bps(bits per second)表示。

四、速率计算

比特率与波特率计算公式是:

比如没有奇偶校验位,停止位为1位

波特率115200对应的比特率为

比特率 = (115200*8  )/(1个起始位 + 8个数据位 + 0个奇偶校验位 + 1个停止位)=115200*8/10 = 11520*8 b/s

转换为字节就是11520 B/s,即每秒传输11520个字节(帧)

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
ACPL-247-500E 1 Avago Technologies 4 CHANNEL TRANSISTOR OUTPUT OPTOCOUPLER, ROHS COMPLIANT, SOP-16

ECAD模型

下载ECAD模型
$3.23 查看
TJA1051T/E/1J 1 NXP Semiconductors TJA1051 - High-speed CAN transceiver SOIC 8-Pin

ECAD模型

下载ECAD模型
$0.39 查看
ECS-160-10-42-CKM-TR 1 ECS International Inc Parallel - Fundamental Quartz Crystal,
$5.71 查看

相关推荐

电子产业图谱

公众号『一口Linux』号主彭老师,拥有15年嵌入式开发经验和培训经验。曾任职ZTE,某研究所,华清远见教学总监。拥有多篇网络协议相关专利和软件著作。精通计算机网络、Linux系统编程、ARM、Linux驱动、龙芯、物联网。原创内容基本从实际项目出发,保持原理+实践风格,适合Linux驱动新手入门和技术进阶。