单片机开发工程师和电子爱好者,每天都要和各种各样的数字电路打交道。在制作调试电路时除了使用万用表、示波器等工具,逻辑分析仪也是必不可少的。
逻辑分析仪是利用时钟从测试设备上采集和显示数字信号的仪器,最主要的作用在于时序判定。逻辑分析仪与示波器不同,它不能显示连续的模拟量波形,而只显示高低两种电平状态(逻辑1和0)。在设置了参考电压后,逻辑分析仪将采集到的信号与电压比较器比较,高于参考电压的为逻辑1,低于参考电压的为逻辑0。这样就可以将被测信号以时间顺序显示为连续的高低电平波形,便于使用者进行分析和调试。使用逻辑分析仪,可以方便地设置信号触发条件开始采样,分析多路信号的时序,捕获信号的干扰毛刺,也可以按照规则对电平序列进行解码,完成通信协议分析。
图1
逻辑分析仪根据其硬件设备的功能和复杂程度,主要分为独立式(单机型)逻辑分析仪和基于电脑(PC-Base)的虚拟逻辑分析仪两大类。独立式逻辑分析仪是将所有的软件,硬件整合在一台仪器中,使用方便。虚拟逻辑分析仪则需要结合电脑使用,利用PC强大的计算和显示功能,完成数据处理和显示等工作。
专业逻辑分析仪,通常具有数量众多的采样通道,超快的采样速度和大容量的存储深度,但昂贵的价格也不是个人所能承受的。作为工程师手头常备的开发工具,目前有许多入门级的逻辑分析仪设计,整体功能虽然不能和专业高档仪器相比,但是用较低的成本来实现特定的功能,也是非常成功的设计。本文以下讨论的逻辑分析仪,主要是指这类入门级设计。
基于电脑并口的逻辑分析仪曾是主流,但是近年来电脑系统逐步不再配置并口,这类设计已经成为明日黄花,仅仅还具有原理学习的价值。
另一类的逻辑分析仪,是以低速单片机为基础的。很多爱好者用PIC、AVR等常见单片机设计了自己的作品。但这类单片机逻辑分析仪的共同弱点就是采样速度太慢,通常不超过1MHz。
以USB IO芯片为基础的入门级逻辑分析仪现在最为流行。比如Saleae logic,还有类似的USBee等。这类产品主要采用一个USB IO芯片,例如CYPRESS公司的CY7C68013A-56PVXC,所有的信号触发和处理工作都是电脑上的软件完成的,硬件部分就只是一个数据记录仪。最高采样速度为24MHz。它们可以“无限数量”地采样,因为所有的数据都是存储在电脑里的。目前一般最多是8个通道,更多的通道数量会成比例地降低最高采样速度。这类产品构造简单,方便易用,价格便宜,是调试单片机开发工作的好工具。它的缺点主要是采样速度只有24MHz、8个通道,对于分析高速并行总线就不能胜任了。更进一步的设计,需要增加FPGA、SRAM等器件,才能解决速度不够和通道数量不足的问题。
图2
图3
图4
下面就以Saleae逻辑分析仪为例,通过采样分析I2C总线波形和PWM波形,简单介绍它的特点和使用方法。
先介绍用逻辑分析仪采样单片机对I2C器件AT24C16的写数据过程。
硬件连接
1.先将逻辑分析仪的GND与目标板的GND连接,让二者共地。
2.选择需要采样的信号,这里就是AT24C16的SDA和SCL,将SDA接入逻辑分析仪的通道1(Input 1),SCL接入通道1(Input 2)。
3.将逻辑分析仪和电脑USB口连接,windows会识别该设备,并在屏幕右下角显示USB设备标识。
软件使用
1.运行Saleae软件,此时逻辑分析仪的硬件已经与电脑相连,软件会显示[Connected]。
2.设置采样数量和速度,I2C为低速通信,所以速度设置不必太高,这里设置为20M Samples @ 4M Hz的速度,也就是能持续采样5秒钟。
3.设置协议,点右上角的“Options”按钮,找到analyzer1,设置为I2C协议,详见图1。
4.按“Start”按钮,开始采样。
图5
图6
数据分析
采样结束后,可以看到波形,见图2。由于我们设置了是I2C分析,因此不光显示出波形,还有根据I2C协议解码显示的字节内容。单片机对AT24C16进行写入操作,在0x00地址处写入10000等数字。波形起始是“start”信号,然后依次是AT24C16的标识0xA2,写入地址0x00,数据0x10,0x27等。由于写入以字节为单位,因此0x2710 = 10000,表明采样成功。
将鼠标放在波形上,点击左键,实现zoom in功能。结果见图3,在“start”条件后,在SCL的8个连续脉冲的高电平处,SDA对应的信号为10100010,即0xA2,第9个脉冲高电平处为0,是ACK标志。
以上简单介绍了用逻辑分析仪进行I2C分析的过程,可以看到操作起来非常简单。
下面再介绍利用逻辑分析仪采样三相交流电机驱动器的6路PWM波形。
硬件连接
1. 先将逻辑分析仪的GND与目标板的GND连接,让二者共地,见图5。
2. 选择需要采样的信号,这里就是单片机6路PWM波形的输出引脚,将其接入逻辑分析仪的通道1(Input 1)至通道6(Input 6),并且把通道的名字改为Utop、Ubottom、Vtop、Vbottom、Wtop、WBottom,分别代表三路输出的上下桥臂。
3. 将逻辑分析仪和电脑USB口连接,windows会识别该设备,并在屏幕右下角显示USB设备标识。
软件使用
1. 运行Saleae软件,此时逻辑分析仪的硬件已经与电脑相连,软件会显示[Connected]。
2. 设置采样数量和速度,PWM的频率为15kHz,这里设置为2M Samples @ 4MHz的速度。
3. 设置触发条件,默认“----”就可以了。
4. 按“start”按钮,开始采样。
数据分析
采样结束后,可以看到波形,见图6。典型的三相电机驱动PWM是互补型的,即一组信号的上下两个波形的状态是相反的,分别控制这组桥臂上下两个开关管的状态,避免同时导通造成短路,见图7。
图7 典型的三相电机驱动电路
图8
将鼠标放在波形上,连续点击左键,实现zoom in功能。见图8。在UBottom的下降沿和UTop的上升沿放置标记线,在右下角的显示框中,可以看到T2-T1=2.25μs,这就是先关断后打开的时间差,专业上称为“死区时间”(Deadtime)。另外,还可以看到PWM的宽度45.5μs,周期66.6μs,占空比31.6%,频率15.0376kHz等信息。这就是一个典型的三相电机变频器的SVPWM波形。
以上两个例子,简单介绍了逻辑分析仪的使用,希望能对广大爱好者有所帮助和启发
End
「汽车电子嵌入式在CSDN上同步推出AUTOSAR精进之路专栏,本专栏每个模块完全按实际项目中开发及维护过程来详细介绍。模块核心概念介绍、实际需求描述、实际工程配置、特殊需求介绍及背后原理、实际工程使用经验总结。目的是让读者看完每一个章节后能理解原理后根据需求完成一个模块的配置或者解决一个问题。」
点击文章最后左下角的阅读原文可以获取更多信息
或者复制如下链接到浏览器获取更多信息
https://blog.csdn.net/qq_36056498/article/details/132125693
文末福利
2.为便于技术交流,创建了汽车电子嵌入式技术交流群,可尽情探讨AP,CP,DDS,SOME/IP等前沿热点话题,后台回复“加群”即可加入;
注:本文引用了一些第三方工具和文档,若有侵权,请联系作者删除!
推荐阅读
汽车电子嵌入式精彩文章汇总第一期:20210530-20230703
汽车电子嵌入式精彩文章汇总第2期
TC3xx芯片GTM模块-CMU,CCM,TBU详解
TC3xx芯片GTM模块-TOM详解
AUTOSAR架构下PWM模块配置实践
TC3xx芯片GTM模块-TIM详解
AUTOSAR架构下ICU模块配置实践
End
欢迎点赞,关注,转发,在看,您的每一次鼓励,都是我最大的动力!
汽车电子嵌入式
微信扫描二维码,关注我的公众号