《UDS协议从入门到精通》系列——图解0x85:控制DTC的设置


Tip📌:本文描述中但凡涉及到其他UDS服务的,将陆续提供链接跳转方式以便快速了解他们。(各服务介绍持续更新中…)

学习UDS基础知识以及其他相关内容?>>>>>>>>> 返回专栏总目录 《UDS协议从入门到精通(UDS速查手册)》<<<<<<<<<

一、简介

1.1 功能简述

  关于DTC(diagnostic trouble code,诊断故障码)的具体含义可以先浏览0x19服务。在正常情况下,服务端(目标ECU)的故障检测功能模块会根据故障检测结果实时更新每个DTC的状态。而该服务就是让目标ECU停止或者恢复DTC状态位的更新。

1.2 常见应用场景

  这个服务通常和0x28服务一起使用,比如在开始写参数之前,为了获得更快的传输速度我们使用0x28服务把所有ECU的通信给关闭了,但此时很多ECU由于收不到相关报文,会没必要地存储很多DTC,这时如果我们使用0x85服务把ECU存储DTC的功能暂时性地禁用掉,则不会产生这种麻烦。

  最常见的应用场景就是在用UDS进行ECU软件刷写时,由于刷写通常是针对某一个ECU单独进行的,此时其他ECU正常工作,因此应当通过功能寻址发送给其他各个ECU请求他们停止更新/记录DTC状态,待刷写完成后再启用状态更新即可。

1.3 注意事项

   当目标ECU接收到0x85请求后,如果控制信息是请求关闭DTC状态更新,则目标ECU应该立即停止DTC的状态更新。即从此刻起,DTC的状态信息保持不变,无论是发生了新的故障,还是已有的故障有了新的状态,目标ECU中的DTC数量、状态信息都不会更新。如果控制信息是启用更新,那么如果先前是关闭状态,就立即恢复到正常的状态,如果先前就是启用更新的状态,则保持状态不变。

   无论是启用还是禁用状态更新,目标ECU在正确处理请求之后都要给出肯定响应,如果无法正确处理,需要给出否定响应并明确响应失败的NRC。

>>>>>>>>>>>>>>> 一些使用提示 <<<<<<<<<<<<<<<:

  • 该服务需在非默认会话状态下才受支持,当ECU重回到默认回话模式时,该服务的功能就会恢复到默认状态,即恢复启用DTC更新状态。
  • 虽然该服务控制DTC状态更新的使能/失能,但并不影响通过0x14服务(ClearDTCInformation)请求清除故障信息。
  • 如果某event没有对应DTC(没有mapping DTC),那0x85请求不会对这个event做任何处理,因为该服务基本对象是DTC 。
  • 如果某event触发安全行为,这时执行0x85请求以及0x14请求清除了DTC,那这个安全行为可能就失效了,这种情况下建议触发的安全行为不应该被同步抑制。

二、数据包格式

2.1 服务请求格式

在这里插入图片描述
  DTCSettingType取值及含义如下表所示:

DTCSettingType含义
0x00保留
0x01启用DTC状态更新
0x02禁用DTC状态更新
0x03 - 0x3F保留
0x40 - 0x5F整车厂商自定义
0x60 - 0x7E系统供应商自定义
0x7F保留

  DTCSettingControlOptionRecord:一般这个参数不使用,可以设置为传递需要控制的DTC列表之类的。

2.2 服务响应格式

2.2.1 肯定响应

在这里插入图片描述
  DTCSettingType的取值与请求中的值保持一致即可。

2.2.2 否定响应

在这里插入图片描述
  可能出现的NRC及其含义如下:

NRC含义
0x12子功能参数不受支持
0x13消息长度错误
0x22不满足请求标准/条件
0x31参数错误,请求中携带的数据是无效的

三、通信示例

诊断仪 目标ECU 85 02 1 诊断仪发送请求: 关闭DTC更新,不抑制正响应 C5 02 2 目标ECU给出正响应 85 01 3 诊断仪发送请求: 开启DTC更新,不抑制正响应 C5 01 4 目标ECU给出正响应 诊断仪 目标ECU

>>>>>>>>> 返回专栏总目录 《UDS协议从入门到精通(UDS速查手册)》<<<<<<<<<

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Autosar是一种用于构建汽车电子系统的软件体系结构标准。下面我们从入门到精通逐步介绍Autosar。 ## 入门 ### 1. Autosar是什么? Autosar全称为Automotive Open System Architecture,是一个开放的软件体系结构标准,旨在为汽车电子系统提供统一的软件平台,以实现跨厂商、跨领域的软件协同开发和交互操作。 ### 2. 为什么需要Autosar? 汽车电子系统日益复杂,其中包含的软件模块数量越来越多,而这些模块往往由不同的供应商提供,这就导致了软件之间的集成和协作问题。同时,不同的汽车电子系统之间也需要进行协作和交互,这也需要一个标准的软件架构来实现。Autosar作为一个开放的软件体系结构标准,可以有效地解决这些问题。 ### 3. Autosar的架构 Autosar的架构分为四个层次:应用层、运行时环境层、基础服务层和硬件抽象层。 应用层:主要处理应用程序的逻辑,包括应用程序和应用程序组件。 运行时环境层:提供运行环境和支持服务,包括操作系统、任务管理、网络通信等。 基础服务层:提供各种基础服务,如诊断、通信、存储、时间管理等。 硬件抽象层:提供硬件驱动和抽象服务,包括设备驱动、CAN总线驱动等。 ### 4. Autosar的优点 Autosar的优点包括: - 跨厂商、跨领域的软件协同开发和交互操作; - 降低开发成本和开发周期; - 提高软件质量和稳定性; - 方便系统维护和更新。 ## 进阶 ### 1. Autosar的工作流程 Autosar的工作流程主要包括以下几个方面: - 系统设计:确定系统的需求和体系结构,包括硬件和软件的架构设计。 - 软件开发:根据系统设计,进行软件模块的开发和测试。 - 软件集成:将不同的软件模块进行集成测试,确保模块之间的协作正常。 - 硬件集成:将软件模块和硬件进行集成测试,确保系统的稳定性和可靠性。 - 系统验证:对整个系统进行验证和测试,确保系统符合要求。 ### 2. Autosar中的软件组件 Autosar中的软件组件包括应用软件组件、服务软件组件和复合软件组件。 应用软件组件:主要是实现具体的业务逻辑,例如控制车辆的引擎、制动系统等。 服务软件组件:提供一些通用的服务支持,例如诊断、通信、存储、时间管理等。 复合软件组件:将多个应用软件组件和服务软件组件进行组合,形成一个具有复杂功能的系统。 ### 3. Autosar中的接口 Autosar中的接口主要包括: - 应用程序接口(API):应用程序组件之间的接口。 - 运行时环境接口(RTE):应用程序组件和运行时环境之间的接口。 - 中间件接口:提供不同中间件之间的互操作性。 - 硬件抽象层接口:提供硬件抽象层和软件之间的接口。 ### 4. Autosar中的工具链 Autosar中的工具链主要包括: - 架构设计工具:用于设计系统的软件和硬件架构。 - 代码生成工具:将设计好的模型转换为可执行的代码。 - 集成测试工具:用于进行软件和硬件的集成测试。 - 系统验证工具:用于对整个系统进行验证和测试,确保系统符合要求。 ## 精通 ### 1. Autosar中的网络通信 Autosar中支持多种网络通信协议,主要包括CAN、FlexRay、Ethernet等。在Autosar中,网络通信是通过通信协议栈实现的,通信协议栈主要由以下几个层次组成: - 应用层:处理数据的格式和语法。 - 传输层:提供传输层协议,例如TCP、UDP等。 - 网络层:提供网络层协议,例如IP协议。 - 数据链路层:提供数据链路层协议,例如CAN总线协议。 ### 2. Autosar中的诊断功能 Autosar中的诊断功能主要包括故障检测、故障诊断和故障处理。诊断功能是通过Diagnostic Communication Manager(DCM)实现的,DCM主要包括以下几个部分: - 诊断服务:提供诊断服务,例如读取故障码、清除故障码等。 - 诊断通信:提供诊断通信服务,例如UDS、KWP2000等。 - 诊断存储:提供诊断信息存储服务,例如故障码存储、诊断数据存储等。 ### 3. Autosar中的操作系统 Autosar中支持多种操作系统,例如OSEK、ARINC653等。操作系统主要负责任务管理、内存管理、时间管理等功能,同时也提供了接口与其他软件组件进行交互。 ### 4. Autosar中的安全功能 Autosar中的安全功能主要包括身份认证、数据加密、访问控制等。安全功能是通过Secured Communication Stack(SecOC)实现的,SecOC主要包括以下几个部分: - 安全服务:提供安全服务,例如身份认证、数据加密等。 - 安全通信:提供安全通信服务,例如安全的CAN通信等。 - 安全存储:提供安全存储服务,例如安全的故障码存储等。 以上就是Autosar从入门到精通的介绍,希望能对您有所帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

车载系统攻城狮

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

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

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

打赏作者

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

抵扣说明:

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

余额充值