做嵌入式驱动开发,会使用逻辑分析仪是必不可少的技能。

什么情况需要使用逻辑分析仪

当你编写驱动与设备通信读写数据遇到问题时,可以用逻辑分析仪排除硬件问题,这样我们就可以安心找软件的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相关推荐

  1. Vivado中使用逻辑分析仪ILA

    FPGA综合出来的电路都在芯片内部,基本上是没法用示波器或者逻辑分析仪器去测量信号的,所以xilinx等厂家就发明了内置的逻辑分析仪.在vivado中叫 ILA(Integrated Logic An ...

  2. Keil逻辑分析仪的使用

    Keil中的逻辑分析仪可以将指定的变量或VTREG(虚拟仿真寄存器)值的变化以图形的方式表示出来. 注:只能看全局变量. 顶部是工具栏,下面是显示区,工具栏如下: setup:按钮用于定义记录信号的变 ...

  3. 什么是逻辑分析仪?逻辑分析仪的参数、使用步骤和优势

    示波器把电信号变换成看得见的图像,便于研究各种电现象的变化过程.利用示波器能观察各种不同信号幅度随时间变化,还可以用它测试各种不同的电量,如电压.电流.频率.相位差.调幅度等等: 逻辑分析仪是利用时钟 ...

  4. 逻辑分析仪抓取CAN总线数据

    硬件连接GND共地,逻辑分析仪CH0接CAN-L. 其他设置: 抓取数据效果图:

  5. spi收发时的寄存器sr不变_我与SPI 的夜晚,只能说逻辑分析仪太次了

    资料下载请点我(第3次更新) 赠送大家资料,复制并在后台回复以下关键词即可领取 实用电源电路 关于今日推文 SPI 高速全双工的通信总线.SPI 通讯使用 3 条总线及片选线,3 条总线分别为 SCK ...

  6. 51单片机之串口通讯应用实例(逻辑分析仪调试)

    硬件:STC89C52RC 开发工具:Keil uVision4 前言:8051是一款很经典的.历史悠久的单片机,作为一款入门级的单片机8051受到很多初学者的欢迎.89c52是8051系列的成员之一 ...

  7. 嵌入式逻辑分析仪SignalTap II 设计范例

    嵌入式逻辑分析仪-SigbalTap II,脱离软件仿真,嵌入式逻辑分析仪,多通道数据测试,在没有外置logic的时候.还是比较爽的事情 本例中用正弦波.三角波.锯齿波.方波波形数据为参考,简要讲解S ...

  8. SignalTap II逻辑分析仪的使用

    一.例子 我们使用如图1所示的verilog代码所实现的开关电路作为例子.这个电路把DE系列开发板上的前8个开关简单的和对应的8个红色LED相连接.它是这样工作的:在时钟(CLOCK_50)的上升沿读 ...

  9. iic总线从机仲裁_IIC协议底层原理超详细解析!示波器,逻辑分析仪多图预警

    1. 协议基础 1.1.     协议简介 IIC-BUS(Inter-IntegratedCircuit Bus)最早是由PHilip半导体(现在被NXP收购)于1982年开发.主要是用来方便微控制 ...

最新文章

  1. 新人上路-搭建项目-springweb-controller测试
  2. 【OFDM系列1】OFDM调制原理、参数、循环前缀、采样偏差、频偏及估计详解
  3. 信息学奥赛一本通 1193:吃糖果 | OpenJudge NOI 2.6 1944:吃糖果
  4. 【Linux】关于Linux操作系统的配置步骤
  5. k3s 部署, 使用注意事项
  6. Caffe中merge卷积和bn层的原理
  7. 防勒索病毒奇兵——MCK(云私钥)
  8. cada0图纸框_CAD图框尺寸大全
  9. win10激活工具,用生命推荐
  10. 家用游戏机主机的发展历史
  11. 周鸿袆讲座:互联网软件的微创新和用户体验(转)
  12. 2022/12/17 mysql 索引基本原理解读
  13. python qt5 增加文本框_PyQt5 文本输入框自动补全 QLineEdit
  14. 循环中continue用法
  15. intersect 相交 范围_Intersect(相交)
  16. 06 - 2 分层架构模式(Layered Arch)
  17. access bars语言_ACCESS Bars 学习笔记 QA
  18. 【C语言】基础知识梳理总结(超详细!!!!
  19. 地图相关(二)---绘制中国地图
  20. 《Web前端开发精品课——HTML5 Canvas开发详解》——第一部分第二章节

热门文章

  1. Qt3D 接口整体介绍 [好]
  2. 俄罗斯方块双人对战版
  3. 浏览器兼容平台f2etest搭建详细记录
  4. 怎么解决浏览器提示无法加载shockwave flash?
  5. 直播测试-网络延迟和丢包工具设置
  6. Open Session in View
  7. ipad2/3分辨率
  8. GIS空间分析(三)—— GIS环境下的空间分析
  9. 秒(s) 毫秒(ms) 微秒(μs) 纳秒(ns) 皮秒(ps)及Java获得
  10. 中联重科智慧产业城项目启动 千亿元投资打造全球典范