热度 8
2013-11-13 19:51
1598 次阅读|
2 个评论
最近用FPGA做了一采集IIC数据包的小仪器,其实市面上很多逻辑分析仪也有这样的功能,但是逻辑分析仪存在采样深度不足的问题,我做的这个小东西可以实时侦测总线上的数据变化,将起始位 数据位 应答位 结束位分别解码成assic码,并通过USB-UART传送到上位机进行显示;FPGA内嵌的16K fifo缓存确保数据不会丢失; IIC 数据抓包仪使用说明 1. 产品名称: IIC 数据抓包仪 /IIC 数据采集仪 /IIC 数据分析器 2. 产品展示: 3. 产品说明: 该产品主要功能为采集 IIC 总线上的数据,并透过 USB 口将数据回传给 PC 端显示,标记起始位、结束位、应答信号灯,用以开发过程中对总线数据上的数据进行分析,可以弥补逻辑分析仪采样深度不足的缺陷; 采集到的数据实时回传,板子上内嵌了 16K 的数据缓存,确保数据不会丢包; 对采集信号做窗口滤波,可以滤除总线上小的毛刺杂讯; CN2 管脚定义如表: 3.01 所示 表 3.01 CN2 采集接口定义 PIN1 PIN2 PIN3 PIN4 GND IIC_SDA IIC_SCLK NC 4. 使用方法: 4.1 连接设备到电脑上,按照提示安装 USB-UART 驱动; 4.2 将需要采集的总线按照表 3.01 的管脚定义连接好 , 请确保 GND 要连接被检测板的 GND ; 4.3 打开友善串口精灵,将串口参数设置成如下,并开启串口接收: 波特率: 115200 数据位: 8 位 起始位: 1 结束位: 1 有无校验: none 流控: none 接收模式: ASCII 当 IIC 总线上有数据的时候, IIC 数据抓包仪会将采集到的数据顺序回传到上位机,如下图所示: 符号说明: ‘ ’ 代表 IIC 数据传输的开始位; ‘ ’ 代表 IIC 数据传输的结束位; ‘ # ’ 代表总线上有应答; ‘ ? ’ 代表总线上没有应答;