与 485 类似,CAN-Bus 也是以总线的方式进行通信的,所有的 CAN 节点都挂在一对差分线上。但 CAN 总线中的节点不存在主从的概念,当节点有数据需要上传时可自主、即时发送,先进的仲裁机制保证数据不会冲突。
二、CAN 总线协议分析
对比标准的通信七层模型,CAN 总线大体可分为物理层、链路层、应用层。对链路层的解析就能得到节点 ID 号。若对一个“未加密”CAN 总线做链路层的解析,使用 CAN 总线接口卡(也称 CAN 盒)即可。这类工具能将 CAN 通讯转换为 USB、PCI 等通信方式,一般配合电脑使用。若要对 CAN 总线做全面的分析,则需要专业的总线分析仪。CANScope 是集 CAN 节点测试与标定、CAN 总线故障诊断与解决的综合仪器。
三、多路 CAN 卡的应用
以上提到的总线协议分析是在总线节点少、节点 ID 已知的前提下进行的。当面对一个协议未知且节点数多、节点 ID 未知网络时,首先要做的是分别摘取各路 CAN 中报文、辨识各节点 ID。
若将每个节点单独取出做测试,则必然破坏原有通信规则。如何在不破坏原有通信的基础上搞清楚一个陌生的收发协议呢?所谓工欲善其事,必先利其器。您需要一个能同时收发、转送多路 CAN 数据的 CAN 卡,同星TOSUN智能TC1014 以及TC1016正是这种测试工具。