Autosar诊断系列介绍17 - 物理寻址及功能寻址详解

本文框架

  • 前言
  • 1. 物理寻址及功能寻址基本概念
    • 1.1物理寻址及功能寻址-定义
    • 1.2两种寻址方式区别
    • 1.3不同诊断服务寻址方式配置
  • 2.不同寻址方式的应用场景

前言

本系列Autosar 诊断入门介绍,会详细介绍诊断相关基础知识,如您对诊断实战有更高需求,可参见诊断实战系列专栏,快速链接:Autosar诊断实战系列导读
如您MCAL配置,通信,诊断,OS等Autosar全栈实战有更高需求,可以参见AutoSar 实战进阶系列专栏,快速链接:AutoSar实战进阶系列导读

UDS(Unified Diagnostic Services)协议,即统一的诊断服务,是面向整车所有ECU的一种诊断通信方式,是基于ISO 14229规范的规范化诊断服务标准,其位于OSI模型中的应用层,UDS可基于不同的总线实现,如基于CAN总线可再结合ISO1576协议进一步实现传输层。

本篇将介绍物理寻址及功能寻址,在诊断部分开发时,针对诊断服务会遇到这两种寻址方式,如前期未接触过这一块,可能会上来有点懵,两种寻址方式分别是什么意思?有什么区别?对应哪些使用场景等,下面我们就逐一介绍,保证大家看了就能理解。
Autosar诊断系列介绍17 - 物理寻址及功能寻址详解_第1张图片
本文对应大纲如下:
Autosar诊断系列介绍17 - 物理寻址及功能寻址详解_第2张图片

1. 物理寻址及功能寻址基本概念

本章我们主要了解下两种寻址方式的概念及不同UDS服务对寻址方式的配置。首先我们来看一下两种寻址方式是如何定义的。

1.1物理寻址及功能寻址-定义

在UDS 14229协议中对物理寻址及功能寻址的定义截图如下:
Autosar诊断系列介绍17 - 物理寻址及功能寻址详解_第3张图片
即物理寻址为一对一的通信方式,功能寻址为通过功能类型寻找具备此功能的对应地址,一对多的通信方式,如何理解呢?

物理寻址就是:上位机提前知道某个ECU具备某项功能,直接对该ECU发送对应诊断命令就可以了。就比如,快递员提前知道某个快递是某某小区某号某室的快递,直接就找到这户人家进行签收就行了。

功能寻址是通过功能类型寻找具备此功能的对应地址,上位机向总线上广播该诊断命令所有具备该功能的ECU都需要响应,这就比如某个快递上只写到某小区的几号楼未具体到某户,快递员就需要在楼下喊一嗓子谁家的快递到了,所有可能买快递的人家都会伸头响应。

1.2两种寻址方式区别

  1. 面向对象不同,物理寻址为确定的对象一对一通信,功能寻址为一对多的广播式通信
  2. 两种寻址方式所支持的服务不同,在ECU所支持的服务中,物理寻址都可以访问,功能寻址只能访问部分服务,一般来讲功能寻址只支持10,11,28,3E,85,22以及14,19这几个服务。
  3. 对NRC的响应规则不同,物理寻址对所有的NRC都需要响应,而功能寻址对于11(serviceNotSupported)、12(subFunctionNotSupported)及31(requestOutOfRange)不响应。
    在这里插入图片描述

1.3不同诊断服务寻址方式配置

在Dcm中对不同的诊断服务开发时,有一项DcmDsdSidTabAddressingFormat配置,即选取对应的寻址方式有三个选项分别为:物理寻址、功能寻址、物理及功能寻址。
Autosar诊断系列介绍17 - 物理寻址及功能寻址详解_第4张图片

2.不同寻址方式的应用场景

物理寻址一般为对某个特定ECU的诊断请求,在此主要说一下功能寻址可能的应用场景:

  1. 直接通过14服务清除多个ECU的故障码;
  2. 刷新软件前使用28服务关闭ECU APP通信,以降低刷新时网络负载;
  3. 刷新软件前使用85服务关闭ECU故障检测功能等。

你可能感兴趣的:(#,Autosar,DiagStack入门系列,autosar,UDS,诊断)