【车载开发系列】CAN总线通信---总线报文格式

【车载开发系列】CAN总线通信—总线报文格式

一.什么是ISO15765

ISO15765协议是一种CAN总线上的诊断协议。其中ISO15765-1包括物理层和数据链路层,ISO15765-2对网络层进行说明,ISO15765-3则是规定到应用层的具体服务。
ISO15765-2定义了诊断模型中TP网络传输层对于不同CAN报文格式单帧和多帧的处理方式。

二.ISO15765的目的

ISO15765目的是为了解决ISO11898协议中定义的经典CAN数据链路层与ISO14229协议中定义的应用层,彼此之间数据长度不统一的问题
经典CAN数据链路层最大能够支持8个字节,但ISO14229并不仅仅是为了CAN总线设计的,最大容量达到4095个字节。

三.单帧传输的概念

当应用层的诊断服务数据可以利用单帧CAN数据传送时,可采用单帧传送方式,一般第一个字节一般用来表示报文的长度,所以单帧的数据长度是6/7字节。

四.多帧传输的概念

多帧传送方式中,网络层根据需要,将诊断数据进行拆分成一个首帧和多个连续帧。首帧包括了分段数据的总长度信息以及一些数据帧;每个连续帧的第一个字节包含拆分的顺序编号,后面的七个字节用于存放诊断数据。接收端在接收到连续帧后根据接收数据帧的编号重组服务数据。
其中多帧的场合数据长度>6/7字节,最多允许0xFFF=4095字节。

五.诊断报文格式

报文的类型包括了首帧FF,流控帧FC,连续帧CF和单帧SF四种。N_PCL中字节1的4-7位用来区分类型。
N_PCLType=0 单帧
N_PCLType=1 首帧
N_PCLType=2 连续帧
N_PCLType=3 流控帧
在这里插入图片描述

1)首帧FF

首帧用来描述数据的起始;
首帧只支持一条信息无法在单个CAN帧中发送时使用。例如,拆分的信息。拆分信息的第一帧编码为FF,在接收到FF时,接受网络层实体应重组这些信息。

2)连续帧CF

连续帧用来传输大的数据。
当发送拆分数据时,所有的连续帧跟着编码为连续帧( CF )。在接收到一个连续帧,接受网络层实体应当重组接收到的数据字节直到整个信息被接收到。接收实体在接收最后一帧信息并无接收错误之后,应传递这些信息到相邻的上。

3)流控帧FC

流控帧用来表示传输过程中对报文流控制。
流控制的目的是调整连续帧N _ PDUs发送的速率。流控协议数据单元的3种类型用
于支持这些功能。这些类型由协议控制信息的流状态( FS )域指示。

4)单帧SF

对于未拆分的信息,网络层提供了一个优化的网络协议,即将信息长度值仅放置在 PCI 字节里。单帧( SF )应当能支持在单个 CAN帧中的信息传输。

六.网络层时间控制机制

网络层时间管理是为了保证发送端和接收端不会因为等待而永久挂起,从而失去通信能力,因此每次通话的过程中设置了超时的时间参数,以便在网络层更好的控制总线的传输。
多帧报文发送方与接收方间的网络层定时
在这里插入图片描述

七.网络层时间控制术语

术语描述
N_As发送端将数据传送到接收端的最大时间
N_Ar接收端将流控制传送到发送端的最大时间
N_Bs发送端在成功发送首帧后到接收到流控帧的最大时间
N_Br接收到首帧后到开始发送下一个流控帧的时间
N_Cs发送端在收到流控帧之后到开始发送连续帧的时间
N_Cr接收端在发送成功流控制后到收到连续帧的最大时间
STmin连续帧之间的最小发送时间间隔。STmin是协议栈需要实现的一个定时器,不同于前面几个定时参数限制最大时间,这个定时器是限制最小时间间隔的,当发送完一个CF后,发送者需要延时STmin才能发送下一帧CF

八.诊断工具和ECU间定时

在这里插入图片描述

术语描述设定值
S3Server会话超时,超时后返回默认会话模式一般设定为5s
S3Client发送下个TestPresent,以保持在非默认会话模式的时间一般设定在2s
P2Server诊断工具请求和ECU响应间的时间间隔。ECU端一般最大50ms
P2Server诊断工具接收到否定响应码78h后等待的超强超时时间间隔最大5000ms
P2Client诊断工具请求和ECU响应间的时间间隔,诊断工具端一般最大不超过150ms
P2Client诊断工具接收到否定响应码78h后等待的超强超时时间间隔最大5100ms则超时
P4ServerECU接受一个请求到最终响应开始传输的时间间隔一般最大值设定在120s
  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: CAN(Controller Area Network)总线是一种用于实时通信的串行总线系统。它最初是由德国Bosch公司开发,用于汽车电子系统中的通信CAN总线采用差分信号传输数据,具有高抗干扰性和可靠性。 CAN总线采用了分布式控制和多主机的工作方式。每个节点都可以发送和接收消息,节点之间通过CAN总线进行通信CAN总线具有高度的可扩展性,可以支持多达100个节点的连接。 CAN总线的主要特点是高速通信和优秀的容错性能。它可以在最高1 Mbps的速度下进行通信,能够满足复杂的实时应用需求。此外,CAN总线还能在高噪声环境下稳定工作,对错误和冲突有很好的容错处理能力。 CAN总线的应用非常广泛,不仅限于汽车电子系统。它也被用于工业自动化、医疗设备、航空航天等领域。CAN总线通过提供实时通信、简化系统设计和减少线缆数量等优势,改善了系统的性能和可靠性。 学习CAN总线需要了解其基本原理、通信格式和应用场景。这里建议通过查阅相关资料,了解CAN总线的工作原理、数据帧格式、帧ID的使用和帧类型等基本概念。同时,学习CAN总线通信协议和错误处理机制也是很重要的。 为了加深理解,我们可以进行实际的实验和项目驱动。可以选择一个基于CAN总线的应用场景,例如汽车的ABS系统,通过搭建实验平台,了解CAN总线在ABS系统中的应用和通信过程。 总之,学习CAN总线需要掌握其基本原理和通信格式,并通过实践来加深理解。掌握CAN总线的知识可以为我们在汽车电子系统和其他领域的开发和应用提供帮助。 ### 回答2: CAN总线是一种常见的网络通信协议,用于在汽车和工业领域中传输数据。CAN总线具有高可靠性、稳定性和实时性,因此在现代车辆和工程中得到广泛应用。 CAN总线的工作原理是基于在网络上广播数据包的概念。每个节点(例如汽车中的传感器或控制器)通过总线连接到一个共享的通信线路上。当一个节点发送一个数据包时,其他节点都能够收到并解析其中的内容。这种分布式的通信方式使得不同节点能够高效地交换信息,从而实现复杂的系统控制。 在CAN总线基础教程中,通常会涵盖以下内容: 1. CAN总线的基本概念和特性:介绍CAN总线的工作原理、通信速率、数据格式等,帮助学习者了解CAN总线的基本知识。 2. CAN消息和帧格式:讲解CAN总线通信中的消息结构和帧格式,包括标准CAN帧和扩展CAN帧,帮助学习者理解数据的传输方式。 3. CAN标识符和过滤:介绍CAN总线中消息的标识符和过滤器的使用方法,帮助学习者实现数据的筛选和识别。 4. CAN物理层:讨论CAN总线的物理层接口和传输介质,如双绞线、光纤和无线等,帮助学习者选择适合的物理层配置。 5. CAN总线工具和调试:介绍CAN总线相关的硬件和软件工具,以及故障排除和调试技巧,帮助学习者实践和应用所学知识。 通过学习CAN总线基础教程,学习者可以获得在CAN总线应用和开发方面的基本知识和技能。CAN总线在汽车电子系统和工程领域的应用非常广泛,理解和掌握CAN总线的原理和操作将有助于学习者在相关领域中取得成功。 ### 回答3: CAN(Controller Area Network)总线是一种现场总线通信协议,广泛应用于汽车、工业控制和机械设备等领域。CAN总线的主要特点是高可靠性、高抗干扰能力和高实时性。 CAN总线由一组节点组成,节点之间通过CAN总线进行数据交换。节点包括CAN控制器和CAN收发器,控制器负责管理总线通信和数据传输,而收发器则负责将控制器产生的电信号转换为总线上的电压信号,以及将总线上的电压信号转换为控制器可读取的电信号。 CAN总线的数据传输采用分布式的方式,即任何一个节点都可以发送数据,其他节点则可以接收数据。节点之间的通信采用基于标识符的消息传递机制,每个消息会以一定的优先级发送,优先级高的消息会抢占总线资源。 CAN总线支持多种通信方式,包括点对点通信、广播通信和组播通信。点对点通信是指某一个节点向另一个指定节点发送消息;广播通信是指某一个节点向所有节点发送消息;组播通信是指某一个节点向一组指定节点发送消息。 CAN总线的应用非常广泛。在汽车领域,CAN总线被广泛应用于车载电子系统之间的通信,如发动机控制模块、防抱死制动系统和空调控制模块等。在工业控制领域,CAN总线常用于控制系统中各个设备之间的通信,如PLC(可编程逻辑控制器)和传感器之间的通信。 总之,CAN总线是一种高可靠性、高实时性的现场总线通信协议,广泛应用于汽车、工业控制和机械设备等领域,它提供了一种可靠和高效的数据传输方式,使得各个节点之间可以进行可靠的数据交换。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

进击的横打

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

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

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

打赏作者

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

抵扣说明:

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

余额充值