
CAN协议基础
文章平均质量分 70
结合实际车辆测试,梳理一些CAN报文的知识点。
乙乙的车COOL
好好学习,天天开心
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
详解低速容错CAN(附与高速CAN对比表)
在ISO 11898-3 Low-speed, fault-tolerant, medium-dependent interface部分描述了低速CAN的容错行为及其物理层内容。既然称为低速容错CAN,主要需要搞清楚的两个核心概念:低速、容错。原创 2025-07-15 23:08:31 · 478 阅读 · 0 评论 -
详解CAN总线的位填充机制
在CAN总线的错误类型中我们介绍了填充错误检测范围是从SOF到CRC场,填充规则是在传输报文中每5个相同极性位后填充1个极性相反位。为什么要进行位填充呢?这种填充规则是怎么定义的,或者说我们一起思考一下为什么需要5个相同极性位才填充1个极性相反位?不管什么通信协议,在数据链路层需要解决的三个共性问题是封装成帧、透明传输和差错检测。原创 2025-07-09 22:51:35 · 295 阅读 · 0 评论 -
E2E、CRC、Checksum、Rollingcounter
在专栏文章仿真CAN报文发送的CRC校验算法(附CAPL代码)和同星TSMaster中如何自定义E2E校验算法中分别给出了CRC算法和E2E校验实现,从中也明白了为什么在测试中需要去做这些仿真。在车载网络测试中经常会出现CRC、E2E、checksum、rollcounter这几个词,这篇文章想搞清楚这几个概念具体的含义及用途。在车载网络测试中,E2E校验更注重端到端也就是ECU到ECU的完整性校验;CRC则注重于报文的错误检测;Checksum注重于报文数据段的完整性保护;原创 2024-11-14 18:10:00 · 6575 阅读 · 0 评论 -
彻底理解ARXML中的PDU
PDU(Protocol Data Unit),即协议数据单元,是SDU和PCI的组成。在AUTOSAR_EXP_LayeredSoftwareArchitecture文档中有对应的解读。SDU:Service Data Unit,服务数据单元。是由上层传递的数据,带有传输数据的请求,可以理解为CAN数据帧报文中的数据域。PCI:Protocol Control Information,协议控制信息。将SDU从特定协议层的一个实例传输到另一个实例时需要的信息,比如源与目的信息。原创 2024-11-09 12:34:28 · 2933 阅读 · 0 评论 -
CAN和CANFD的不同点
专栏,介绍完CAN和CANFD基础后,或许都想了解一下两者间到底有哪些区别呢?当然有区别啊,名称不一样哈哈哈哈哈哈。不废话,直接表格对比大法!关于CAN和CANFD总线的基础知识可以阅读。原创 2024-11-08 18:51:04 · 328 阅读 · 0 评论 -
一文了解CANFD基础
在2012到2015年之间,已经开发了不少CANFD产品在市面上应用,属于非ISO标准的CANFD产品,但是又无法被完全召回,因此把这一部分的产品称为NON-ISO CANFD控制器。CANFD帧由帧起始SOF,ID仲裁段,控制段,数据域,CRC域,ACK域,帧结束,共七个部分组成。而数据段结束仲裁,总线上只有一个节点在发送数据,传输速率可以切换到一个较高的值,CANFD使用更大的数据场来提高传输效率,取消了远程帧。从上面的帧结构来看,CANFD报文在CRC前和CRC段采用不同的位填充机制。原创 2024-11-06 19:16:18 · 1320 阅读 · 0 评论 -
CAN报文:位定时和位同步
文章目录1、什么是位同步2、帧同步3、位组成4、采样点5、同步规则6、硬同步7、重同步8、测试实例1、什么是位同步位同步(比特同步)是指为了将发送端发送的每一个比特都能够被接收端准确地接收,接收端时钟调整到和发送端时钟彻底相同。这就需要在准确的时刻(即在一个bit位的中间位置)对收到的电平根据事先约定好的规则进行判断,满足什么条件为1,满足什么条件为0。由于CAN通信采用异步串行的方式,没有时钟线,所以需要进行位同步。2、帧同步对于发送端发过来的比特流,我们仅仅通过位同步把每个位正确读出来是还不够原创 2024-10-31 19:11:21 · 1776 阅读 · 1 评论 -
CAN报文的busoff基础和测试实战
每个节点都含有REC和TEC。REC:接收错误计数器;TEC:发送错误计数器。原创 2024-10-31 08:02:56 · 1955 阅读 · 0 评论 -
CAN总线物理层&基础特性
2、CAN采用双绞线进行通信,主要目的是抗干扰(在一对双绞线中信号电流方向相反,产生的磁场可以相互抵消,加上屏蔽层并正确接地就可以实现电磁兼容)。在如下图双绞线,一般默认黄高绿低。1、CAN的物理层结构如下图所示,主要由微控制器、CAN控制器、CAN收发器组成,通过将报文转换为逻辑电平再转换为在CAN双绞线上传输的电信号。:CAN-H的对地电压为3.5V,CAN-L的对地电压为1.5V,电压差为2V,数字信号用0来表示1。:CAN-H和CAN-L的对地电压均为2.5V,电压差为0V,数字信号用1来表示。原创 2024-10-30 07:55:43 · 746 阅读 · 0 评论 -
CAN错误帧类型与发送过程
但是要说明的是:当一个节点连续检测到多个错误,进入到被动错误模式时,此时很有可能是此节点出了问题或者受到干扰,这个时候这个节点检测出的错误可能已经不被信任,所以处于被动错误模式的节点发出的错误帧是14个隐性位,可以被正常报文或正常的错误帧覆盖掉。发送节点发送0,总线上却是1,此时发送节点检测到位错误,开始发送主动错误标志(6个连续显性位);发送完主动错误标志后,接收节点和总线此时都检测到位填充错误(5个连续相同极性位后填充一个极性相反位),接收节点和总线开始发送主动错误帧。原创 2024-10-27 12:18:09 · 799 阅读 · 0 评论 -
CAN帧结构(图解)
文章目录各段长度及含义各段长度及含义原创 2024-10-26 15:01:24 · 355 阅读 · 0 评论 -
CAN帧类型
对于主动错误节点,帧空间由3个显性位的间歇字段和总线空闲组成。主要用于在先行的和后续的数据帧(或远程帧)之间提供的一段附加的延时,避免总线负载率过高。超载帧由6个连续显性位组成,它破坏了帧间空间3位固定隐性位。远程帧,又称遥控帧,是一种由总线单元发出,向其他节点请求发送具有同一标识符的数据帧。数据帧,顾名思义就是将数据从发送器传送到接收器的CAN帧报文,其中又细分为标准帧和扩展帧。超载帧,又称过载帧,作用: 接收单元通知它未准备好接收的帧。在挂起传输阶段被动错误节点不可以发送数据帧与远程帧。原创 2024-10-24 19:21:10 · 601 阅读 · 0 评论 -
CAN总线仲裁机制
CAN总线上的每个节点都能监测到总线上发送的数据,当总线空闲时每个节点都能够进行报文发送,多个节点同时发送报文时,最终由哪个节点来进行发送是仲裁机制的来源。原创 2024-10-11 18:29:17 · 1699 阅读 · 0 评论 -
CAN总线的错误类型
只能由发送节点检测出来的是位错误、ACK错误。只能由接收节点检测出来的是CRC错误。发送节点/接收节点都能检测出来的是填充错误和格式错误。这些对于在实际测试过程中分析错误帧出现的原因有一定理论支撑。原创 2024-09-30 16:07:28 · 747 阅读 · 0 评论 -
CAN报文的错误类型
CAN报文的错误帧和错误类型问起来很多人容易混淆概念。一句话概述就是:由于各种原因造成CAN报文在总线上传输时出现错误,错误类型可能是位错误、CRC错误、ACK错误、格式错误、填充错误,检测到错误产生后就会发送错误帧(主动错误帧、被动错误帧)在总线上进行广播。错误帧是对CAN报文错误的处理。本文主要介绍一下CAN报文的几种错误类型,以及各种的错误检测。原创 2024-07-26 07:22:38 · 2231 阅读 · 0 评论 -
仿真CAN报文发送的CRC校验算法(附CAPL代码)
关于CRC校验的基本理论、算法实现网上已经有很多介绍文章,本文不再赘述。只是记录在项目测试中真正开发CRC算法并进行测试的一些体会。原创 2024-06-28 18:17:23 · 4304 阅读 · 0 评论