UDS诊断系列介绍04-FIM模块功能介绍

本文介绍了Autosar诊断入门中的FIM模块,FIM用于根据DEM模块传递的故障状态和Event-FID映射关系,决定功能是否降级。FID是功能标识符,FIM配置EventId和抑制掩码来计算功能许可状态。当诊断状态改变时,Dem模块通知FIM,FIM读取最新状态并由SWC调用来判断功能启用或禁用。

1. 系列介绍

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

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

1.1 FIM模块概述

FIM即功能禁止模块,其主要功能为根据DEM模块传入的每个Event的当前及历史故障状态并结合Event与FID之间的mapping关系,输出功能降级标志位,SWC模块根据功能降级标志位的置位情况作出是否功能降级的处理。

2. FIM相关概念

2.1 FID概念

FID即FunctionIdentifier,在FIM实现功能是否允许的计算,计算的对象是SWC或逻辑单元,它们接收信息“授予权限”/“拒绝权限”。在FIM模块中配置这些组件,并通过接口分配FunctionIdentifier来分配这些组件。
在这里插入图片描述
根据分配给特定FID对应的EventId计算每个FID的许可状态。然后,计算出的每个FID的许可状态(如FID_K),以确定最终的许可状态。此外,FiM可以轮询monitor状态以重新计算许可状态。轮询由请求其许可状态的功能(SW-C或BSW)或在循环任务中触发。

2.2 FIM数据结构

可配置多个EventId和抑制掩码分配给一个FID。每个FID的EventId和FIM掩码的数量必须对应匹配,以便每个配置的事件都存在相应的禁止掩码,禁止掩码中包含FID的禁止条件。
在这里插入图片描述

3. FIM模块作用过程

Step1:Dem模块调用接口FIM_DemTriggerOnMonitorStatus()告知Fim诊断状态发生改变;
Step2:FIM模块调用接口Dem_GetMonitorStatus()读取Event的最新状态;
Step3:SWC调用FIM_GetFunctionPermission()判断是否进行功能禁用/降级。
在这里插入图片描述

在这里插入图片描述

4. Autosar系列文章快速链接

Autosar系列文章概览及快速链接
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Autosar汽车电子进阶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值