历史上的今天
今天是:2025年03月01日(星期六)
2018年03月01日 | 如何识别陌生CAN网络的协议?
2018-03-01
在CAN网络中,所有节点的数据收发共享一条总线。当面对未知的多节点CAN总线网络时,如何准确分析各节点间的通信协议呢?
一、CAN总线通信方式
与485类似,CAN-Bus也是以总线的方式进行通信的,所有的CAN节点都挂在一对差分线上。但CAN总线中的节点不存在主从的概念,当节点有数据需要上传时可自主、即时发送,先进的仲裁机制保证数据不会冲突。

图1 CAN总线通信方式
二、CAN总线协议分析
对比标准的通信七层模型,CAN总线大体可分为物理层、链路层、应用层。对链路层的解析就能得到节点ID号。若对一个“未加密”CAN总线做链路层的解析,使用CAN总线接口卡(也称CAN盒)即可。这类工具能将CAN通讯转换为USB、PCI等通信方式,一般配合电脑使用。若要对CAN总线做全面的分析,则需要专业的总线分析仪。CANScope是集CAN节点测试与标定、CAN总线故障诊断与解决的综合仪器。

图2 CAN总线抓包工具及方法
三、多路CAN卡的应用
以上提到的总线协议分析是在总线节点少、节点ID已知的前提下进行的。当面对一个协议未知且节点数多、节点ID未知网络时,首先要做的是分别摘取各路CAN中报文、辨识各节点ID。


图3 数据分离、摘取
若将每个节点单独取出做测试,则必然破坏原有通信规则。如何在不破坏原有通信的基础上搞清楚一个陌生的收发协议呢?所谓工欲善其事,必先利其器。您需要一个能同时收发、转送多路CAN数据的CAN卡,USBCAN-8E-U正是这种测试工具。

图4 USBCAN-8E-U
USBCAN-8E-U集成8路CAN-bus接口,各通道间可做路由(转发)功能。在识别节点ID时,可以将节点同时接到8个CAN接口上,然后设置8路CAN间通信自由转发,保证原有网络通信规则不受破坏。强大的上位机软件将每个通道发送、接收的CAN报文按通道分开显示,数据分析一目了然。

图5 多节点CAN网络分析
史海拾趣
|
求助:VS.NET 2008下WINCE模拟器 需要带网络连接功能 VS.NET 2008不像03提供了WINCE模拟器 求助 刚折腾了一个版本 不带网络功能 即希望在模拟器上可以配置IP PING通 这样可以测试一些访问MSSQL的程序 谢谢 不知道表达清楚了没有……汗… 查看全部问答> |
|
我现在调用6410JPEG硬解码功能的时候,图片的分辨率大于2048*1536,那解码就出错。我查看DataSheet中说支持4096*4096,不知是怎么回事? 以下是两个图片的解码打印信息: ------------------------Decoder Test Done --------------------- ---- ...… 查看全部问答> |
|
请问现在哪个版本的soft-ice能在winxp sp2上顺利运行啊,哪位大哥能给个网址啊 请问现在哪个版本的soft-ice能在xp sp2上顺利运行啊,哪位大哥能给个网址啊,我试了很多版本都不行啊,很多都提示ERROR CODE 31, 一直都起不来啊.… 查看全部问答> |
|
程序如下: #include <avr/io.h>#include <avr/interrupt.h>#include <util/delay.h> int main(void){ DDRD=0xff; PORTD=0xff; MCUCR|=(1<<ISC00); GICR|=(1<<INT0); &n ...… 查看全部问答> |
|
据调查,目前中国从事嵌入式ARM MCU软件开发的中小企业单个项目的研发工程师数目基本为3到5人,为了协助中国这群最具活力的企业更快更好更经济的从事基于ARM MCU的开发,让每一个工程师,每一个项目团队都 ...… 查看全部问答> |
|
下个月中离职,然后旅游半个月,再然后到另外一个城市去找工作。 去年毕业后到现在已经工作将近一年了,第一次因为是好奇独自背上包包就开始乱逛起来了,之后就开始喜欢上了那种走的感觉,每当假期必定自己一个出去游走。去年国庆去了广州,春节去了 ...… 查看全部问答> |
|
看过RF2500 pdf的重点总结: 1. 四线串行配置和数据接口:CC2500 通过4 线SPI 兼容接口(SI,SO,SCLK和CSn)配置。这个接口同时用作写和读缓存数据。SPI 接口上所有的地址和数据转换最先在重要的位上处理。 &nb ...… 查看全部问答> |
|
由于最近一直在与队员一起攻克题目,所以没时间写博客,现在把最近做的东西总结一下,希望对大家有帮助。 以前一直是用测频率法来测信号的频率,就是在一秒内测被测频率的个数,即为频率,这种方法在高频时还行,低频就误差比较大,无论是用FPGA ...… 查看全部问答> |




