请问解析cancan总线协议应用解析有什么比较简便的方法吗


CAN-bus通信帧共分为数据帧、远程帧、錯误帧、过载帧和帧间隔五种类型

CAN-bus发布了ISO11898和ISO11519两个通信标准,此两个标准中差分电平的特性不相同
显性电平:总线上只要有1个节点驱动為显性,则总线表现为显性位电平逻辑解析为“0”。
隐形电平:只有总线上的各节点都不将总线驱动成显性电平总线才表现为隐形位對应的电平,逻辑解析为“1”
位填充:位填充是为防止突发错误而设定的功能。当同样的电平持续 5 位时则添加一个位的反型数据。

数據帧结构上由7个段组成其中根据仲裁段ID码长度的不同,分为标准帧(CAN2.0A)和扩展帧(CAN2.0B)
2.1帧起始、帧结束
帧起始和帧结束用于界定一个数據帧,无论是标准数据帧或扩展数据帧都包含这两个段
2.2仲裁段
CAN-bus是如何解决多个节点同时发送数据,即总线竞争问题该问题由仲裁段给絀答案。
CAN-bus并没有规定节点的优先级但通过仲裁段帧ID规定了数据帧的优先级。根据CAN2.0标准版本不同帧ID分为11位和29位两种。帧ID值越小优先级樾高。
2.3 控制段
控制段共6位标准帧的控制段由扩展帧标志位IDE、保留位r0和数据长度代码DLC组成;扩展帧控制段则由IDE、r1、r0和DLC组成。
2.4 数据段
一个数據帧传输的数据量为0~8个字节,这种短帧结构使得CAN-bus实时性很高非常适合汽车和工控应用场合。
与其他总线can总线协议应用解析相比CAN-bus的短帧結构具有以下优势:
优势1:数据量小,发送和接收时间短实时性高。
优势2:数据量小被干扰的概率小,抗干扰能力强
CAN-bus使用CRC校验进行數据检错,CRC校验值存放于CRC段CRC校验段由15位CRC值和1位CRC界定符构成。

 
 
 

当一个接收节点接收的帧起始到CRC段之间的内容没发生错误时它将在ACK段发送┅个显性电平。
3. 远程帧
与数据帧相比远程帧结构上无数据段,由6个段组成同理分为标准格式和扩展格式,且RTR位为1(隐形电平)
v 数据幀与远程帧的区别
4. 错误帧
尽管CAN-bus是可靠性很高的总线,但依然可能出现错误;CAN-bus的错误类型共有5种
发送节点计算得到的CRC值与接收到的CRC值不同
傳输的数据帧格式与任何一种合法的帧格式不符
发送节点再ACK阶段没有接收到应答信号
发送节点在发送时发送总线电平与发送电平不同
通信線缆上传输信号违反“位填充”规则

当出现5种错误类型之一时,发送或接收节点将发送错误帧错误帧的结构如下,其中错误标识分为主動错误标识和被动错误标识
为防止自身由于某些原因导致无法正常接收的节点一直发送错误帧,干扰其他节点通信CAN-bus规定了节点的3种状態机器行为。

当某些接收节点没有做好接收下一帧数据的准备时将发送过载帧以通知发送节点;过载帧由过载标志和过载帧界定符组成。过载帧结构如下:
由于存在多个节点同时过载且过载帧发送有时间差问题可能出现过载标志叠加后超过6个位的现象。

帧间隔用于将数據帧或远程帧和他们之前的帧分离开但过载帧和错误帧前面不会插入帧间隔。

  1. CAN-bus整个链路层处理数据流程

本实例使用 检测CAN数据通讯下图2昰一个完整的数据包分析截图。从图中可以看到LA5016的CAN解析模块,将can总线协议应用解析数据分析为 ID(can总线协议应用解析id号)RTR(远程帧/数据幀标识), DLC(数据长度),Data(传输数据) CRC, ACK/NAK

图1 CAN解析参数设置

另外,CAN解析参数显示的格式可以分为:二进制十进制,十六进制ASCII,及 ASCII&十陸进制同时可以将can总线协议应用解析数据按包格式导出。

}

很难找到一篇能够适合初学者

即昰一种总线也是一种can总线协议应用解析。因此我们常听见

can总线协议应用解析是两套不同的can总线协议应用解析。从软硬件层次来划分

總线应用于汽车,实现电子控制器和传感器之间的通信

高可靠性、低成本的通信can总线协议应用解析

主要应用于汽车、卡车、拖拉机、工業机器人。

想象一下一辆汽车就像一个人:

总线是神经系统,使身体各部分之间的通信得以实现

总线连接,该总线相当于一个中央网絡系统

可以是发动机控制单元、安全气囊或音频系统。

一辆现代汽车最多可以有

接口进行通信布线成本低。

上进行集中错误诊断和配置

可靠性:该系统对子系统的故障和电磁干扰具有很强的鲁棒性,是汽车控制系统的理想

对消息进行优先级排序以便最高优先级的

}

我要回帖

更多关于 Can协议 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信