如何用示波器测量串口波特率

嵌入式Linux

共 807字,需浏览 2分钟

 ·

2021-08-01 07:00


这是前段时间遇到的问题,刚好这里找到了答案,记录下分享给大家。

如何确定时基

假如要测量的波特率为9600, 则每一比特位的时间为:1/9600 ≈ 104 μs,一般示波器横向上每个大格子里5个小格子,要想看清一比特位一般需要一个小格子就够了,则时基为:104 μs * 5 = 520 μs, 也就是说时基要500 μs。

注意:测量时选择的耦合方式为直流,边沿类型为下降沿,所测串口的电平为TTL 电平,该电平的串口在不传输数据时电平为高,靠拉低判断起始位。

下图是测9600波特率,所发数据为0x55:

0x55_9600_.PNG

所用示波器为 汉泰的 IDSO1070。从光标测量可以看出AB之间的时间为107.422 μs,和计算的104 μs 差不多。

下图为波特率9600,所发数据为0x00, 因为数据位全部是0,所以看到一直是低电平:

IMG_0360.PNG

如何用示波器测串口波特率

前提:需要能从信号中找出一个比特位位来。
已知发送数据位0x55020000, 0x55 的2进制位为10101010。
如图任意选取一比特位,用光标测量可得,时间为:1.074us, 频率位:930.909kHZ, 最接近的波特率为:921600, 所以所测信号的波特率为926100。

IMG_0361.PNG

参考:


https://electronics.stackexchange.com/questions/17562/how-to-read-serial-data-from-oscilloscope






推荐阅读:


专辑|Linux文章汇总
专辑|程序人生
专辑|C语言
我的知识小密圈
浏览 33
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报