CAN总线的学习总结

本文详细介绍CAN总线的起源背景,包括其开发目的和标准化过程。接着深入剖析CAN总线的构成,数据交互流程,以及数据格式,涵盖了标准帧与扩展帧的区别。最后,概要介绍CAN总线的常见问题和解决方案,适合汽车电子系统开发者阅读。
  1. CAN总线的启源
    CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。最高1Mbps(距离小于40M),最远可达10KM(速率低于5Kbps)。

  2. CAN总线的构成
    在这里插入图片描述CAN总线由CAN_H和CAN_L两根数据双绞线组成,同时,两个数据线之间接120Ω的电阻(电缆的特性阻抗120Ω,为了模拟无限远的传输线路),每个个设备分别和CAN_H和CAN_L相连,挂载到CAN总线上进行通信。
    CAN总线使用差分电平的方式进行数据交互,当没有数据发送时,两条线的电平一样都为2.5V,称为静电平,也就是隐性电平。当有信号发送时,CAN_H的电平升高1V,即3.5V,CAN_L的电平降低1V,即1.5V。
    按照定义的:

    CAN_H-CAN_L < 0.5V 时候为隐性的,逻辑信号表现为"逻辑1"- 高电平。

    CAN_H-CAN_L > 0.9V 时候为显性的,逻辑信号表现为"逻辑0"- 低电平。
    在这里插入图片描述
    CAN总线空闲定义,连续11位的隐形

<think>好的,用户想查找关于CAN总线学习资料和知识点总结。我需要根据提供的引用内容整理出一个清晰的回答,同时生成相关问题。首先,我应该回顾用户提供的引用资料,确保信息准确无误。 首先,用户提供的引用资料涵盖了CAN总线的基本原理、错误处理机制、电平判断、故障节点处理以及物理层特性。我需要将这些内容分门别类,组织成结构化的知识点。例如,可以分成基础概念、错误处理机制、电平标准、应用场景等部分。 接下来,我需要检查每个引用内容,确保引用的正确性。比如引用1提到CSMA/CR,但根据上下文,这可能是一个笔误,因为通常CAN总线使用的是CSMA/CA(载波侦听多路访问/冲突避免),或者可能用户混淆了不同的协议。不过查看用户提供的引用,引用1确实写的是CSMA/CR,可能需要确认是否准确。但根据用户提供的引用内容,直接引用即可,不过可能需要注明可能存在的不一致。 然后,关于差分信号的部分,引用3和引用5提到了不同的电压标准。引用3提到总线的差分电压为逻辑0时2V,而引用5指出显性电平(逻辑0)下CANH为3.5V,CANL为1.5V,压差2V。这些信息需要整合,说明不同标准下的电平差异,比如ISO 11898-2和ISO 11898-3的区别。 错误处理机制在引用2、4中有详细说明,包括错误类型的检测和故障节点的隔离。这部分需要详细说明五种错误类型以及如何处理永久性故障。 物理层特性方面,引用3和5提供了电压参数,需要明确区分速和低速总线的不同电平标准。同时,引用5中的显性电平对应逻辑0,而隐性电平对应逻辑1,这可能容易混淆,需要明确说明。 此外,用户提供的引用还提到了TTCAN,即时间触发的CAN,这在引用4中简要提到,可以作为应用场景的一部分。可能需要简要说明其特点。 在组织回答时,应按照逻辑顺序,从基础到级,逐步展开。每个部分引用对应的文献,确保标注正确。同时,生成的相关问题需要覆盖用户可能感兴趣的扩展内容,比如故障处理、电平标准比较、应用场景等。 需要确保回答中的LaTeX格式正确,行内公式用$...$,独立公式用$$...$$。但根据用户的问题,可能数学公式较少,主要关注文本结构。但如果有涉及电压计算或其他数学表达,需要正确应用格式。 最后,生成的问题应具有针对性,帮助用户深入学习相关知识点。例如,询问错误类型、比较电平标准、故障隔离机制等。 现在检查是否有遗漏的信息点,比如总线仲裁机制、帧格式、位定时等,但根据提供的引用,用户没有给出相关内容,可能不需要包含。但根据CAN总线的常见知识点,是否需要补充?不过用户只提供了特定的引用,应严格基于这些引用进行回答,避免引入外部知识。 总结,回答应包含以下几个部分: 1. 基础原理:包括CSMA/CR(引用1)、差分信号(引用3、5) 2. 错误处理机制:错误类型、故障隔离(引用2、4) 3. 电平标准:速与低速的差异(引用3、5) 4. 应用场景:如TTCAN(引用4) 生成的问题可以围绕这些部分展开,比如询问错误类型的具体内容,电平标准的比较,故障处理的方法等。</think>### CAN总线知识点总结 #### 1. **基础原理** CAN总线采用**CSMA/CR(载波侦听多路访问/冲突避免)**机制,设备通过监听总线状态判断是否可以发送数据,避免冲突[^1]。数据传输基于**差分信号**,分为速(ISO 11898-2)和低速(ISO 11898-3)两种耦合方式: - **总线**:逻辑1对应差分电压$0\ \mathrm{V}$,逻辑0对应$2\ \mathrm{V}$(显性电平)[^3]。 - **实际电平**:显性电平(逻辑0)时,CANH为$3.5\ \mathrm{V}$,CANL为$1.5\ \mathrm{V}$,压差$2\ \mathrm{V}$;隐性电平(逻辑1)时,CANH与CANL均为$2.5\ \mathrm{V}$[^5]。 #### 2. **错误检测与处理** CAN总线能区分**暂时性错误**(如外部噪声)和**永久性故障**(如断线),并自动隔离故障节点[^2]。控制器会检测以下五类错误: 1. 位错误 2. 填充错误(位填充规则违反) 3. CRC错误 4. 帧格式错误 5. 应答错误[^4]。 #### 3. **故障节点处理** 系统通过错误计数器定位故障节点,若某节点持续发送错误帧,则会被**自动关闭**,避免影响整体通信[^4]。 #### 4. **应用场景** - **实时控制**:如汽车ECU通信。 - **工业自动化**:设备状态监控。 - **扩展协议**:如**TTCAN(时间触发CAN)**,通过时间同步提升确定性[^4]。 --- ### 学习资料推荐 1. **ISO 11898标准文档**:涵盖物理层与数据链路层规范。 2. **《CAN总线设计与应用》**:详解协议栈设计与实例。 3. **厂商手册**:如NXP、TI的CAN控制器芯片手册。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值