找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8484|回复: 0
打印 上一主题 下一主题
收起左侧

Saleae-Logic8逻辑分析仪使用说明书

[复制链接]
跳转到指定楼层
楼主
ID:396385 发表于 2018-9-11 10:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Saleae逻辑分析仪应用手册
本教程通过图文并茂的方式来讲解,Saleae的用途和实际应用方法
一、什么是逻辑分析仪:
逻辑分析仪是一种类似于示波器的波形测试设备,它通过采集指定的信号,并通过图形或者数据统计化的方式展示给开发人员,开发人员通过这些图形化时序信号按照协议来分析硬件或者软件中的错误。逻辑分析仪是设计中不可缺少的设备,通过它,可以迅速定位错误,发现并解决问题,达到事半功倍的效果,尤其在分析时序,比如 1wire、I2C、UART、SPI、CAN等数据的时候,应用逻辑分析仪解决问题非常快速。
以下是一个 Saleae分析一个 UART通信时序和一个 IIC时序的典型例子:从图中我们可以清晰的看到, UART通信在波特率 9600下面,清晰的显示出十六进制数字 0xA9,而下边的 IIC信号一个读数据的时序过程,通道 1是 SDA,通道 2是 SCL,在 1通道中清楚的显示出来,绿点表示起始位,红点表示结束位,第一个是往 0x90这个器件地址写数据 (w是 write的意思 ),第二个表示要读取的地址是 0x40,第三个数据是重新发送器件地址并且是读数据,第 4个字节即读到的数据 0xA9。是不是感觉非常方便快捷呢。
二、软件安装以及软件基本应用
首先安装 logic software,软件在光盘里有配套,同时也可以到官方网站下载,这里有各种系统版本支持,请下载你所需要的系统支持版本:
下载完后,直接双击安装。安装完后,会在桌面出现一个快捷方式:
双击快捷方式,进入后,会出现以下界面:
这个逻辑分析仪软件在没有插入硬件的时候,最上边显示的是 Disconnected,可以进行模拟运行 (start simulation),用鼠标点一下后会出现一个模拟的波形,如果你提前设置协议的话 (如何设置协议,后边会讲),他还会产生符合你协议的波形呢 ~!当然,非真实测到的波形,可以让你提前体验一下,点鼠标左键放大波形,右键缩小波形,滚动鼠标滑轮也可以放大和缩小波形,没有使用硬件之前可以提前体验一下。

三、硬件安装
软件安装完成后就可以插入硬件了,插上硬件后,会自动提示发现新硬件,然后出现一个对话框
直接“点自动安装软件 (推荐)”就可以了,安装完后,刚才的那个 Disconnected会自动变化成为 Connect,并且 start simulation会自动变化成 start,这样就是和实际硬件连接起来了,下边我们就可以用来测量实际波形了,并且可以在图示位置设置通道名字,采样深度,采样频率等等参数。
逻辑分析仪里边有 2个非常重要的参数,就是采样深度和采样频率。大家可以看到在这个软件中,有两个可以选择数字大小的地方,第一个就是采样深度,第二个是采样频率:
前边那个 5M代表我们从开始采集,一共采集到 5Mbit个数据他就自动停止了,后边的 2M代表我们 1s钟可以采集 2M个 bit位的数据,那么这么算下来,我们这样设置,可以采集 2.5s的数据。
对于 saleae逻辑分析仪的强悍之处在于,他把采集到的数据通过 USB高速通信实时的发送给了电脑,所以采样深度取决于我们电脑的内存,可以上到几个 G,也就是说,如果我们设置了 1G的采样深度,采样频率是 1M,那么我们就可以采集近 17分钟的数据保存下来慢慢分析,这对于大家分析一些芯片的数据信息非常有用。
四、触发设置
触发设置是为了方便大家在使用时,从有用信号开始发送的时候再采集,这样就可以避免刚开始采集了大量的无用信号。
在这里,你用哪个通道做触发就设置哪个通道,可以分别设置上升沿开始采集数据,或者下降沿开始采集数据,或者高低电平开始采集数据。默认是不设置触发,点了 start后,就会自动开始进行数据采集,一直采集到设置的采样深度完成后自动停止。
那下边我们就可以正式采集一组数据进行观察了!
五、信息采集
要特别注意的是,我们设备的正常工作电压是 5.5V以下, 1.5V以下的会被认为是低电平, 1.5V到 5.5V之间的会认为是高电平,最高承受电压是 7.5V,所以请大家注意测试电压。
逻辑分析仪配套有杜邦线,首先请各位把杜邦线逐一的插到逻辑分析仪的接口上去,杜邦线插好后分 2排,上边一排 5根逻辑分析仪对应的是外壳上左边的丝印,下边一排对应的是右边的丝印。要测试信号前,请先将逻辑分析仪的 GND通道连到你的板子的 GND引脚上去,否则测量出来的数据不可信。
剩下的 8条数据通道,可以任意选择接到你需要的硬件上去。并且选择合适的采样深度和采样频率,以及触发条件,那么下面就可以直接点 start开始采集了。采
集到的波形入下图所示:
大家把鼠标放到波形上,在右侧就会自动显示一些必要的信息,包括脉宽长度,周期,频频率等等信息。大家可以自己点上角那个小齿轮,可以选择需要显示的信息,那些不需要的信息可以不让他显示出来。
另外,我们如果想要采集多个信息,那可以进行信息保存,点击右上角的 Option,里边有个:
可以把当前的信息保存,再抓取下一屏幕的,最后吧每个屏的进行对比,也可以把图形保存成为图片形式等等,这一块大家可以尝试自己摸索一下:
六、数据分析
首先我们来了解一下左边的 Measurements栏目显示的信息,当我们把鼠标放到一段脉冲以后,在左侧就会显示出一段数据信息:
那么我们来逐一对右边的信息进行分析。
首先,第一个参数 Width,是针对这个图形中这部分分长度是 0.232500ms,第二个参数 Period,是的周期;
第三个参数 Duty Cycle是当前这个周期的占空比,第四个参数 Frequency是当前这个信号的频率,也就是周期的倒数。 T1和 T2是分析仪中的两个时间标签,我们可以通过放置标签来得到我们需要的信息,我们用鼠标分别点击和,就可以在波形中得到两条绿线,可以通过放置绿线来得到尺度标签,在右侧就会显示出 T1和 T2的位置,以及 |T1-T2|的值。 Saleae逻辑分析仪还有一个更加强大的功能,就是可以自动分析协议,其中包含以下协议类型。
对这几种类型的波形来说,不仅仅可以显示波形,还可以直接显示协议数值,显示方式可以为二进制,十进制,十六进制, ASCII码等等。我们可以看到上边那幅图里,通道 0上的是 UART的一条线,通道 1是 I2C的 SDA引脚,通道 2是 I2C的 SCL引脚。那我们可以清晰的看到数据被分析出来,具体的操作方式是:
点击右侧的 Analyzers,选择 Async Serial,会出现以下页面,在这个界面里,我们要对 UART通信的参数进行选择,其中有通道选择,波特率选择,数据位,停止位校验位等等,可以根据实际情况选择。选择好了以后,可以点 Save。
而后会提示你是否修改通道名字,你可以根据自己的需求选择改或者不改,点 Rename和 Don’t:
Rename都可以,然后再设置一下显示格式,有两个地方可以选择显示格式,大家可以自己选一下在 Options里边有一个,如下图:
另外一个点击对应协议如 Async Serial左边的小齿轮,也可以选择显示模式,我习惯上选择十六进制。选择好了,设置上升沿触发,点 Start,发送的数据就可以被捕捉到,抓到数据后,会出现以下情况:
大家可以看到,低位在前,高位在后,数据是 0x6C,并且大家可以看到,上边共有 8个小白点,每一个小白点都表示一个数据位,刚开始的起始位就没有小白点。可以自动把我们的数据显示出来。同样的方法,我们再设置一个 IIC数据来观察一下:
大家看看,是不是很清晰呢,绿色的表示起始位,红色表示停止位,第一个字节是器件地址 0x90,并且是写操作,第二个命令写的是 0x40这个地址。然后第三个指令是读操作,包含器件地址。第四个字节是读到的数据是 0x6C,并且应答位还是非应答位一目了然。其他协议大家自己抓一下看看吧。
七、使用 Saleae分析电视遥控器协议
用我们的探针夹子,把 Gnd连接到板子的 Gnd引脚上,通道 1接到红外接收管 HS0038的接收引脚上。设置好下降沿触发,然后点 Start,再按下遥控器的一个按键,抓到一个波形如下:
红外遥控器的协议不是标准协议,而且一个厂家的遥控器,可能协议也不一样,所以这个协议需要我们自己来分析,对于 NEC协议来说,是现在遥控器协议中用的最多的,他的具体协议规则是:先上来 9000us左右的低电平持续时间(即 38K载波时间)和 4500us左右的高电平持续时间来作为引导码。键码的数字信息通过一个高低电平的持续时间来表示,大概数值是 1680us高电平+560us。
低电平表示 1,560us高电平+560us低电平表示 0。那剩下的我们可以从那个图里读出来了,大家可以用 T1和 T2这两个标尺读一下最终的结果,我把二进制写出来,低位在前,高位在后: 00000000 11111111 10100010 01011101,那我们把他们整理成十六进制分别是 0x00,0xff,0x45,0xBA,那这样红外解码就完成了,这 4个字节包含的含义,前两个字节是设备代码,就是说,这个型号的家电遥控器全部是这个代码,第三个字节 0x45是键码,就是不同的按键有不同的键码,第四个字节是键码的反码,大家可以自己看下对不对。
八、 Saleae逻辑分析仪使用问题和注意事项
1、关于最大 24M的采样频率
绝大多数情况来说,只要您的电脑速度够快,并且没有其他 USB设备干扰的基础上,逻辑分析仪达到 24M的采样频率是没有任何问题的。但是如果当前的 USB设备正在被其他设备所使用,那么最大采样频率可能会低一两个等级,比如 16M,12M等。
1)逻辑分析仪使用的是 USB2.0的标准,在这种标准下,理论上最大的平均带宽达到 24M,但是逻辑分析仪的优先级比较低,这样就意味着有可能“撞”到其他 USB设备的通信。
2)逻辑分析仪拥有 4个 512字节的缓冲区,在这 4个缓冲区都被填满之前, USB必须将部分数据读出,也就是说, 4个缓冲区不可以同时填满,否则数据就无法进入了,逻辑分析仪会直接报错。
这就意味着,如果工作在 24M的情况下, USB设备不仅要给出 24M的通信速率,而且必须在 4个缓冲区被填满之前,保证其他设备部占用 USB资源。基于这些原因,逻辑分析仪不能够长时间一直工作在 24M的采样频率下,具体取决于计算机性能, USB带宽的可用性和延迟情况,以及正在占用 USB驱动的其他设备等诸多因素。
为了让您的计算机可以最大限度提高采样率,尽可能保证以下条件:
1>确保没有其他较大程序占用 CPU的时间较长
2>确保有足够大的内存空间,否则计算机将会没有足够的 RAM获取逻辑分析仪的数据
3>尽可能直接连接计算机的 USB接口,而不是通过一个 USB集线器
4>尽可能让其他使用 USB的设备少占用 USB的资源
5>要想让逻辑分析仪拥有足够的动力增大采样频率,尽可能不用其它 USB设备。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表