概述
1. 配置示波器
- 将两个表笔接触 SCL、SDA 触点,确认表笔都接触上的标志是两个表笔都是高电平。
- 将trigger MENU中的 【触发方式】 设置成边沿触发,【信源】 选择SDA表笔,【边沿类型】 设置成下降沿,【触发MODE】 先变成auto,
- 将触发点设置到偏向屏幕的左侧,以便能看到更多的波形。
- SCL比SDA稍微靠上一点,容易分析。
- 发出信号,先整体观察下整体波形。
- 【触发MODE】变成Single,即可单次采集到波形,想再一次触发新的波形,按SINGLE键。
在linux下发送i2c的波形可以使用i2cdetect工具
实例采集的是7位地址的i2c地址的波形
2. 数据规律
开始标志 + 8位数据(7位器件地址+1个读写位) + 1个ACK/1个NACK + 8位有效数据 + ACK + ...
- 开始表示:SCL高电平期间SDA的下降沿
- 读写位:1读,0写
- 有效位:SCL的高电平器件,SDA的电平一定是稳定的,每个SCL高电平期间的SDA的电平表示的是各个位。依次读即可。
3. 实例分析
如下是一个典型的波形
图中直接读取结果
0b 1011 1010 0 1000 0001 0
其中前八个位 0b 1011 1010,则
器件地址 0b 1011 1010 >> 1 = 0b 0101 1101 = 0x5d,
读写位是移出的位,0表示写。
后边紧跟着的0 表示的是ACK
然后紧跟着传输的数据 0b 1000 0001 + 一个 0作为ACK。
最后
以上就是心灵美铃铛为你收集整理的示波器测量i2c信号实例的全部内容,希望文章能够帮你解决示波器测量i2c信号实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复