你的工作台面,除了手机,电脑,稳压电源,万用表,示波器,电烙铁,仿真器,开发板,半成品,,,,,, 看一看有没有一种叫做逻辑分析仪的东西,也许它被甩在了抽屉里面,也许找不到了,尺寸太小,,,,,,,% s/ E4 X: B9 n; W 逻辑分析仪,这种“仪器”,若干年前还是非常高大上的,HP一套逻辑分析仪十万元不一定够用,太贵了。' s$ L+ c* N5 @5 k2 } 可是现在,世界不同了,二十多元的小东西,充分体现了山寨精神之伟大。' S. ~4 E* I( t# W 我们买不起价格昂贵的逻辑分析仪,没得用。我们用一顿饭的钱,买个山寨货,克隆货,学习学习没有错吧。- m( B+ r' P- F! H" c7 f$ o (千万别想着自己DIY这种东西,已经烂大街了,工具是拿来用的) / o' ~) W2 ?, j, w6 e7 t- U 主角硬件出场:铛铛铛,铛! 这一种廉价的,20-30元的,原本应该是的Saleae公司的早期产品,现在该公司早就更新换代了,有时间可以崇拜一下:" P3 I+ G6 o ~* N0 P http://www.saleae.com/zh/; Z3 j- P6 C, U3 x6 m' s* @ A ) F1 ~. c( a, p3 d5 l Saleae现售的产品有100-500Msps,而我们这种便宜的东西,取样率只有24Msps。可以分析的最高信号频率为12MHz。 其实,最大12MHz的信号频率已经很高了,能够应付许许多多常用的,比如UART,I2C,SPI,LCD,,,, 实际工作中,硬件UART的调试,我就不建议使用。软件UART、I2C、SPI、LCD等等,一定要用的。 主角的PC上位机软件,原厂网站可以下载,使用情况如下: ' |5 z( D& Q9 `$ ^# P 下面重点来了,推荐给大家一个【开源】的软件叫PulseView。 PulseView是sigrok开源软件组织的一款产品,就是我们常说的上位机软件。+ G# B, I6 N( U3 w PulseView,支持的这种USB虚拟仪器,其中逻辑分析仪就达40多种,当然也包括上面的最便宜的。 PulseView,能够解析的通讯协议,多达90种。/ M k( m+ \0 A: X PulseVew + Saleae,也能够解析40多种协议,其实常用的只是几种。 7 |/ E0 \ L! ^" e 下面,看看我使用PulseVew + Saleae的情况,# Y6 \4 u5 D7 @ 7 @2 m6 `8 S8 d; ^* x 咱们来看一个12MHz的USB2.0的全速D+、D-信号,硬件情况如下: 左边就是Saleae逻辑分析仪,中间是我的CMSIS-DAP仿真器。; M+ k) c# f& x& o7 h4 H& s 0 s) o! I7 ?8 e) Z* ]* h" s& m 第一次使用,不会用,软件找不到逻辑分析仪,按照下图设定,很快上手:- l9 S: Y9 w( Y& P: v" x, @! [! `3 u 打开Keil软件,运行程序于Debug模式,收到SWO的printf打印输出,也就是USB口正在传送数据。 看看我得到了什么,其实,那些数据我也没有搞懂呢,没关系,看起来很砖业就好。 就啰嗦这么多,还是你们自己试一试吧,PulseView真的功能强大。这么好,还是开源的。 顺便再说一下,PulseView,不仅可以连接逻辑分析仪,其实它还可以连接各种各样的仪器,比如DS1054Z示波器,电源,万用表,信号发生器,声压表,,,, ' I7 z$ {% ]% z PulseView安装程序有40MB,建议大家去sigrok网站自己直接下载:$ f) N$ M, j' K( L6 C http://sigrok.org/wiki/Downloads9 c/ _$ @' D* N d |
太多了,只要是有数据通讯协议的串行/并行数据线,这东西用来“调试软件”,比示波器要来得更加直观方便,事半功倍。9 f: d& _. \% F, `0 o; W
比如,调试UART,I2C,SPI,CAN,LCD驱动,等等,等等,很容易发现软件bug。- `% R" K' v: R. n" ~9 y
' L! Y* J) M* Q0 ^& m! o: S
特别是移植别人的驱动程序,可能因为是不同平台的原始码,出现问题时,需要查找原因。& b* t6 W1 x& z: a8 X$ `3 n
我上一次使用,就是调试一个I2C的接口程序,很快就搞定了。
有自定义协议功能,参考:& L# I3 S; [( d: ]
http://sigrok.org/wiki/Protocol_decoder_HOWTO
是不是简单易用我就不知道, 靠您了
评分
查看全部评分
好一点的就要10倍的价格,300元左右,可以有400MHz的采样率(4通道),和最多16通道(20MHz)。( j5 n; b) X: {! D