SPI总线测试和分析
2.2 调试总线上有故障的节点
SPI设备可以实现一对多的连接,即一个主设备连接多个从设备,通过片选信号(SS/CS)来选择需要操作的从设备。当主设备切换传输对象的时候,我们需要关注总线所发送的信息是否与所选择的从设备一致。有可能出现所发送的信息与当前所选择的从设备并不一致的状况。
2.3 分析EEPROM或者Falsh内存单元的有效性
EERPOM/Falsh是在各类系统单板上广泛使用的存储器件,主要作用是保存系统上电时需要导入的信息,比如主内存地址、容量、模式,各种设备初始化状态、部分系统信息等,EEPROM/Falsh器件大多通过SPI总线传递数据。当读写EEPROM/Falsh配置信息出错的情况下,我们就不仅仅需要知道是哪片EEPROM出问题,更有意义的是要深入到器件内部,定位具体是哪个地址单元出了问题,是读数据过程中有问题还是写数据过程中有问题。
3、力科示波器充分满足工程师测试SPI总线的需求
广大工程师用户日益需要能处理各种通用测量任务、同时又能满足分析 SPI总线等低速串行总线的专用需求、且符合有限预算的解决方案,力科基于Windows操作系统的全系列示波器产品满足了这些需求,这些系列包括WaveSurfer Xs、WaveRunner Xi、WavePro 7Zi和WaveMaster 8Zi,这些产品一个很重要的的应用方面就是调试串行总线。示波器不仅要能测量信号电平、频率等常规项目,还要能提供专门的软件包以更深入分析和调试SPI总线。
力科 SPI测试软件包的总线协议触发功能和总线协议解码功能,能够帮助工程完成设备调试:
3、1 总线协议触发
在力科示波器界面下进入菜单项“Trigger”->”Serial Data”->”SPI”,弹出的界面中允许用户按照特定的模式去触发SPI消息帧,如下图3所示。你可以根据自己的需求选择不同的数据对总线进行触发。可以选择对SPI总线标准下的某一子集(SPI、SIOP、SSPI)做触发。可以设置时钟的相位和极性,及数据的高位或者低位触发。可以输入需要触发的数据是多少,且数据的位数是可以调整的。也可以选择以2进制还是16进制做为触发的数据格式。
通过总线触发,我们可以对总线所传输的信息和可能出现的错误做分析和调试
图3 力科示波器 SPI软件包设置触发界面
3、2 总线协议解码
在力科示波器界面下进入菜单项“Analysis”->”Serial Decode”->”SPI”,用户对总线正在传输的数据内容进行实时解码,解码后的内容能选择以“二进制”、“十六进制”和“ASCII”三种方式直接显示在波形上方。例如图4中的信息,MOSI上的第二个0x05,表示RDSR,查看读状态寄存器,MISO上随即返回0x02,表示该设备是可写的,且处于空闲状态。
通过对捕获到的总线协议做解码,我们可以直观的看到总线上传输的数据是否是工程师实际上发送和接收所要求的数据,从而帮助调试。
图4 SPI总线解码
除了可以直接在波形上显示解码结果以外,力科还提供了列表显示解码结果。例如图5中的信息,列表显示了解码后该字段的相关信息,可以通过点击列表的某一行来放大该段数据以观察波形细节。
图5 SPI列表显示及放大
- 移位寄存器的区别以及在for和while中的用法(01-06)
- labview中的移位寄存器、循环隧道,自动索引隧道的区别(12-27)
- 频宽、取样速率及奈奎斯特定理(09-14)
- 为什么要进行信号调理?(09-30)
- IEEE802.16-2004 WiMAX物理层操作和测量(09-16)
- 为任意波形发生器增加价值(10-27)
