逻辑分析仪的使用--LA1010
做嵌入式驱动开发,会使用逻辑分析仪是必不可少的技能。
什么情况需要使用逻辑分析仪
当你编写驱动与设备通信读写数据遇到问题时,可以用逻辑分析仪排除硬件问题,这样我们就可以安心找软件的bug了。
这里我以Kingst逻辑分析仪 LA1010型号为例,来说明。
连接硬件
逻辑分析仪相比示波器,体积优势明显,首先,你需要硬件工程师帮你把板子引出三根线SCL(时钟线) SDA(数据线) GND(接地)。
逻辑分析仪USB直连电脑供电,然后选择两个CH通道连上SCL和SDA,这里我把CH0连SCL,CH1连SDA,接地的线对应连上逻辑分析仪的GND即可。
逻辑分析仪软件设置
由逻辑分析仪厂家提供此软件
如图显示已连接,则说明软件工作正常
设置我们使用的通道,保存退出即可
添加协议解析器,选择i2c
SDA和SCL选择正确
设置采样率和采样深度,提高采集时间有两个办法,一是提高采样深度,二是降低采样率
使用i2c tool工具发送命令
直接adb push 到板子上执行
检测系统上有几组i2c
命令:i2cdetect -l 可以看到目前板子上,有三组i2c是可用的
检测挂载在i2c上的器件
命令:i2cdetect -r -y 0 检测i2c0上的设备
可以看到0x70的地址上有一个设备,是我添加的温湿度传感器
第一种测试方法,使用i2ctransfer读取16位寄存器(重点)
执行这一步之前,我们先设置SCL为下降沿,然后点启动,软件会等待触发
adb shell 执行./i2ctransfer -f -y 0 w2@0x70 0xef 0xc8 r1 触发(其中参数0为i2c0,w2表示写两个字节,@0x70为你的i2c设备(注意要7位地址),0xefc8 为验证传感器是否存在以及是否正确沟通的寄存器地址,详见温湿度寄存器手册)
如果采集时间太短可参考上诉办法,提高采集时间
如果硬件通信正常,我们把鼠标放到波形区域,按住ctrl键滑动鼠标滑轮,可以放大和缩小波形。我们不断缩小波形,会发现如下图形
再放大波形后可见,前一段为我发送0xefc8的命令,后一段为设备回复的ACK,值为0x08
在右侧协议解析中,也能清晰的看到wirte read的数据
第二种测试方法,使用i2cdump查看器件所有寄存器的值
i2cdump -f -y 0 0x70 (其中参数0为i2c0,0x70表示设备地址)
缩小波形,能看到大段内容
再放大波形,能看到大量这种write之后能收到read回复,说明硬件通信正常
能采集如上两种这样的数据,便说明硬件是ok的,如果我们编写的驱动获取不到数据,就要查看我们代码是否哪里有问题了。
注意:测试读取的寄存器地址不能直接用获取温湿度设备数据的寄存器,因为设备可能还没有使能,是无法获取到数据的,而0xefc8这种寄存器地址本身就是用于测试设备能否正常沟通,不需要使能设备。
逻辑分析仪的使用--LA1010相关推荐
- Vivado中使用逻辑分析仪ILA
FPGA综合出来的电路都在芯片内部,基本上是没法用示波器或者逻辑分析仪器去测量信号的,所以xilinx等厂家就发明了内置的逻辑分析仪.在vivado中叫 ILA(Integrated Logic An ...
- Keil逻辑分析仪的使用
Keil中的逻辑分析仪可以将指定的变量或VTREG(虚拟仿真寄存器)值的变化以图形的方式表示出来. 注:只能看全局变量. 顶部是工具栏,下面是显示区,工具栏如下: setup:按钮用于定义记录信号的变 ...
- 什么是逻辑分析仪?逻辑分析仪的参数、使用步骤和优势
示波器把电信号变换成看得见的图像,便于研究各种电现象的变化过程.利用示波器能观察各种不同信号幅度随时间变化,还可以用它测试各种不同的电量,如电压.电流.频率.相位差.调幅度等等: 逻辑分析仪是利用时钟 ...
- 逻辑分析仪抓取CAN总线数据
硬件连接GND共地,逻辑分析仪CH0接CAN-L. 其他设置: 抓取数据效果图:
- spi收发时的寄存器sr不变_我与SPI 的夜晚,只能说逻辑分析仪太次了
资料下载请点我(第3次更新) 赠送大家资料,复制并在后台回复以下关键词即可领取 实用电源电路 关于今日推文 SPI 高速全双工的通信总线.SPI 通讯使用 3 条总线及片选线,3 条总线分别为 SCK ...
- 51单片机之串口通讯应用实例(逻辑分析仪调试)
硬件:STC89C52RC 开发工具:Keil uVision4 前言:8051是一款很经典的.历史悠久的单片机,作为一款入门级的单片机8051受到很多初学者的欢迎.89c52是8051系列的成员之一 ...
- 嵌入式逻辑分析仪SignalTap II 设计范例
嵌入式逻辑分析仪-SigbalTap II,脱离软件仿真,嵌入式逻辑分析仪,多通道数据测试,在没有外置logic的时候.还是比较爽的事情 本例中用正弦波.三角波.锯齿波.方波波形数据为参考,简要讲解S ...
- SignalTap II逻辑分析仪的使用
一.例子 我们使用如图1所示的verilog代码所实现的开关电路作为例子.这个电路把DE系列开发板上的前8个开关简单的和对应的8个红色LED相连接.它是这样工作的:在时钟(CLOCK_50)的上升沿读 ...
- iic总线从机仲裁_IIC协议底层原理超详细解析!示波器,逻辑分析仪多图预警
1. 协议基础 1.1. 协议简介 IIC-BUS(Inter-IntegratedCircuit Bus)最早是由PHilip半导体(现在被NXP收购)于1982年开发.主要是用来方便微控制 ...
最新文章
- 新人上路-搭建项目-springweb-controller测试
- 【OFDM系列1】OFDM调制原理、参数、循环前缀、采样偏差、频偏及估计详解
- 信息学奥赛一本通 1193:吃糖果 | OpenJudge NOI 2.6 1944:吃糖果
- 【Linux】关于Linux操作系统的配置步骤
- k3s 部署, 使用注意事项
- Caffe中merge卷积和bn层的原理
- 防勒索病毒奇兵——MCK(云私钥)
- cada0图纸框_CAD图框尺寸大全
- win10激活工具,用生命推荐
- 家用游戏机主机的发展历史
- 周鸿袆讲座:互联网软件的微创新和用户体验(转)
- 2022/12/17 mysql 索引基本原理解读
- python qt5 增加文本框_PyQt5 文本输入框自动补全 QLineEdit
- 循环中continue用法
- intersect 相交 范围_Intersect(相交)
- 06 - 2 分层架构模式(Layered Arch)
- access bars语言_ACCESS Bars 学习笔记 QA
- 【C语言】基础知识梳理总结(超详细!!!!
- 地图相关(二)---绘制中国地图
- 《Web前端开发精品课——HTML5 Canvas开发详解》——第一部分第二章节