CAN物理层协议解读(ISO11898-2 2016)

31 篇文章 ¥49.90 ¥99.00
CAN(Controller Area Network)是一种串行通信总线,主要用于汽车控制部件间的数据交换。该协议采用载波监听多路访问和非破坏性总线仲裁技术,支持最高5Mbps的速率和10km的通信距离。本文档依据ISO 11898-2 2016标准,详细阐述了CAN总线的输出电平规范、接收电平规范以及不同速率下的时序要求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、说明

CAN(Controller area network)中文名称是控制器局域网,是用于解决汽车众多控制部件之间的数据交换而开发的一种串行数据通信总线,可以使用双绞线来传输信号,由德国博世公司在20世纪80年代专门为汽车行业开发。

其特点有:

  • 总线上节点不分主从

  • 采用载波监听多路访问、逐位仲裁的非破坏性总线仲裁技术。

  • 直接通信距离最远10km,速率50Kb/s

  • 通信速率最高可达5Mb/s,距离40m

  • 末端要有120欧终端电阻

本文档基于ISO 11898-2 2016版本,最高支持速率5Mbps。

二、协议要求

CAN总线共有两根线:CAN_H和CAN_L,CAN信号就是CAN_H-CAN_L得来的,有2个状态:显性(Dominant)和隐性(recessive),如下:

1、输出电平规范

显性输出电平要求如下,正常Vdiff范围1.5V

参考资源链接:[CAN总线协议解析:标准扩展格式](https://wenku.csdn.net/doc/1qf6fbjvqg?utm_source=wenku_answer2doc_content)CAN协议通信过程中,区分标准格式和扩展格式报文的关键在于报文的标识符(ID)的位数。标准格式报文的ID由11位组成,通常用于较为简单的通信场景,如汽车内部的传感器数据传输。扩展格式报文的ID由29位组成,适用于需要大量节点通信的复杂系统,例如大型工业自动化网络。 为了在通信过程中正确地处理这两种格式的报文,CAN控制器必须支持位定时和同步机制,确保所有节点能够在正确的时间点读取总线上的信号,避免数据冲突和丢失。此外,每个CAN节点都配备有一个过滤器,可以被配置为接收特定的标准格式报文或扩展格式报文,甚至可以同时接收两种格式的报文,这取决于具体应用需求。 在实际应用中,为了区分和处理不同格式的报文,需要在软件层面上进行相应的配置和编程。开发者可以通过设置过滤器掩码和过滤器代码来决定接收哪些报文。例如,如果需要接收标准格式报文,可以将过滤器掩码设置为0x7FF,过滤器代码设置为目标报文ID。对于扩展格式报文,则需要将掩码设置为0x1FFFFFFF,并相应地设置29位ID。 对于CAN协议中的错误处理机制,无论是标准格式还是扩展格式报文,都有统一的错误检测和识别过程。当报文出现错误时,发送方会重发该报文,而接收方则会忽略错误报文,确保数据的准确性和可靠性。此外,故障界定功能确保了在严重错误发生时,节点不会继续干扰总线通信,从而保护网络的整体稳定性。 如果你想要更深入地理解CAN协议中报文格式的区别和应用场景,以及如何实现有效的报文处理,推荐参考这本资料:《CAN总线协议解析:标准扩展格式》。这本书详细介绍了CAN协议的基本原理和报文的结构,以及如何在实际应用中实现标准格式和扩展格式报文的区分和处理。通过学习这本书,你可以获得在各种复杂系统中应用CAN协议的全面知识。 参考资源链接:[CAN总线协议解析:标准扩展格式](https://wenku.csdn.net/doc/1qf6fbjvqg?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qflook

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值