
采用示波器侦测串口总线的通信是比较常用的一种解码技术。研华USB数字存储示波器USB-DSO提供8位/16位 1GS/s采样,信号输出和高级信号捕获、总线译码、信号比对测试等功能。其中总线译码功能可译码的总线有:I2C,UART, CAN, ProfiBus,ARINC429, MIL-STD-1553, LIN。128M深度存储器可以让软件采集较长时间、不间断的数据,适合于总线译码。本文以CAN总线为例进行说明。
CAN总线解码概述
1、 CAN总线概念
CAN(控制器区域网络)总线是一种在汽车和工业机械中使用的串行协议,允许微控制器相互通讯。该标准最初由 Robert Bosch GmbH 于 1983 年制定。它使用双绞线上传输差分信号,分别为CAN高(CAN H )和CAN低(CAN L),当线路受到共模干扰之后,信号差值不变,信号依然能够正确被解析。
2 CAN总线上传输的电平特点
CAN 总线上发布了ISO11898和ISO11519两个通信标准,分别对应高速CAN和容错CAN。此两个标准差分电平的特性不同。本文主要介绍如何用Pico示波器进行ISO11898标准的CAN总线解码。


CAN高电平大概为3.5V左右,CAN低电平大概为1.5V左右,CAN差分电平大概在2V左右。一般情况下,我们可以从三种CAN总线波形上进行解码:
1)从CAN-H总线上传输的电平,阈值设置为3V左右即可
2)从CAN-L总线上传输的电平,阈值设置为1.6V左右即可
3)从差分波形(CANH-CANL)上进行解码,阈值设置为1.5左右即可。从差分波形上解码更加准确,因为差分波形滤除了线路上的共模干扰信号。
CAN解码设置
USB-DSO从CAN低波形上进行解码设置。打开示波器软件,点击DISPLAY按钮进入显示设置,再点击Display/Math,选择Display(2/3),此时出现Decode Setting和Report菜单选项。

1、将CAN网络中的CANL端接入到示波器A通道(示波器通道任意选择)探头的正极,CAN网络的GND连接探头的负极。

2 、点击Decode Setting工具菜单,弹出串行解码设置窗口。

3、点击Report工具菜单,可将 Decoder所译码的数据整理为报告形式。

参考资料:
本文分享自 智能制造预测性维护与大数据应用 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!