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

news2024/11/14 3:51:17

本文框架

  • 1. 系列介绍
    • 1.1 FIM模块概述
  • 2. FIM相关概念
    • 2.1 FID概念
    • 2.2 FIM数据结构
  • 3. FIM模块作用过程
  • 4. Autosar系列文章快速链接

1. 系列介绍

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系列文章概览及快速链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/176587.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

English Learning - L1-13 主动脉修饰 (上) 2023.1.16 周一

English Learning - L1-13 主动脉修饰 (上) 2023.1.16 周一11 主动脉修饰11.1 定语两大核心when 引导的定语从句where 引导的定语从句为什么有时关系词前会有介词到底用 which 还是用 that ?1. 先行词是 all, much, little, few, the one 等不定代词&a…

Java---微服务---SpringCloud(1)

SpringCloud011.认识微服务1.0.学习目标1.1.单体架构1.2.分布式架构1.3.微服务1.4.微服务技术对比1.5.SpringCloud1.6.总结2.服务拆分和远程调用2.1.服务拆分原则2.2.服务拆分示例2.2.1.导入Sql语句2.2.2.导入demo工程2.3.实现远程调用案例2.3.1.案例需求:2.3.2.注册…

如何使用Facebook Insights提升SEO策略

搜索流量是所有网站都必须考虑的重要因素,但如何才能吸引到更多的访问者呢?我们都知道 Google的 SEO算法,那 Google针对搜索流量的算法有哪些?Facebook Insights (Facebook Search Engine Insight)是一款搜…

基于python个性化推荐购物系统的设计与实现

源码获取:https://www.bilibili.com/video/BV1Ne4y1g7dC/ 一、开发工具及技术 Python3.6.8,Django3,mysql8,navicat数据库管理工具,html页面,javascript脚本,jquery脚本,bootstrap…

从零实现一个组件库(一)项目环境搭建

文章目录前言monorepo架构1.monorepo架构的优势2.使用pnpm搭建monorepo架构(1)全局安装pnpm(2)初始化项目(3)新建workspace.yaml文件4.不同包之间的相互引用TypeScript支持1.安装TypeScript2.初始化TypeScr…

6、工程和模块管理

文章目录6、工程和模块管理6.1 IDEA 项目结构6.2 Project和Modoule的概念6.3 创建模块6.4 删除模块6.5 导入别人的模块6.6 当导入的模块字符集问题,导致中文乱码6.7 同时打开两个IDEA项目工程1 新建一个IDEA项目2 两个IDEA项目工程效果3 打开两个IDEA项目【尚硅谷】…

Kubernetes:开源 K8s 管理工具 Rancher 认知

写在前面 博文内容涉及Rancher 的介绍,集群内安装查看 Rancher 的基本功能理解不足小伙伴帮忙指正 我所渴求的,無非是將心中脫穎語出的本性付諸生活,為何竟如此艱難呢 ------赫尔曼黑塞《德米安》 Rancher 介绍 Rancher 是一个 Kubernetes 管…

计算机基础——python数据结构之顺序表和链表

计算机基础——数据结构概述数据结构算法时间复杂度python的代码执行时间测量模块线性表顺序表顺序表的连续存储顺序表的两种基本实现方式链表单向链表顺序表和单链表的对比双向链表单向循环链表概述 数据是信息的载体,是描述客观师傅属性的数、字符以及所有能输入…

抖音小黄车挂淘宝店相关问题记录

不开淘宝店,但作为技术被客户问起来,总得知道个一二,今天研究了一下,大致情况如下: 抖音绑定淘宝推广id 大致流程就是抖音开通橱窗,橱窗和淘宝挂钩,淘宝商品引入橱窗。 首先要满足抖音要求&a…

AlmaLinux 9 安装Oracle GraalVM Enterprise Edition 21.3.x

今天我们尝试一下在AlmaLinux 9 安装Oracle GraalVM Enterprise Edition 21.3.x。 GraalVM Enterprise 21 是一个 Long-Term-Support (LTS) 版本。 注意:下载Oracle GraalVM Enterprise Edition需要有Oracle账户,如果没有,可以通过访问创建您…

【SpringCloud】Nacos注册中心、配置中心用法与原理(上)

【SpringCloud】Nacos注册中心、配置中心用法与原理(上) 一、Nacos注册中心 1. 安装Nacos 【BUG】请注意Nacos2.0版本与1.0版本是有差别的! 2. Nacos的服务注册使用样例 (1)引入依赖 (2)配…

PowerShell 学习笔记

一、PowerShell 强大之处使用方便面向对象使用.net平台功能兼容性好(兼容CMD等)可扩展性好二、快捷键Tab:自动补齐命令或者文件名三、管道和重定向管道:上条命令的输出作为下一条命令的输入举例如下:列出当前目录ls结果…

FPGA 20个例程篇:19.OV7725摄像头实时采集送HDMI显示(四)

第七章 实战项目提升,完善简历 19.OV7725摄像头实时采集送HDMI显示(四) 在介绍完OV7725初始化配置和视频采集模块后,就到了整个项目的核心部分即DDR3乒乓存储图像模块,为了实现整个FPGA项目工程当中良好的实时性&…

会议论文分享-FSE20-基于学习的状态修剪策略

基于学习的状态修剪策略1.引言2.Homi算法2.1.概率修剪策略2.2.Homi2.2.1.Collecting Promising Data2.2.2.Generating Features.2.2.3.Learning Distribution2.2.4.Sampling Values2.2.5.总结3.实验3.1.实验设置3.2.有效性3.3.候选状态数量3.4.与朴素方法的对比4.代码实操4.1.代…

5、IDEA详细配置

文章目录5、IDEA详细配置5.1 如果打开详细设置界面5.2 系统设置1 默认启动项目配置2 取消自动更新5.3 设置整体主题1 选择主题2 设置菜单和窗口字体大小3 设置IDEA背景图5.4 设置编辑器主题样式1 编辑器主题2 字体大小3 注释的字体颜色5.5 显示行号与方法分隔符5.6 代码智能提示…

2023mac电脑系统第三方清理软件CleanMyMacX

认识 CleanMyMac X 4.12.2! 此版本有哪些亮眼的更新? “更新程序”模块之前曾出现重复推送已安装更新的情况。 小的可用性问题。 任何一部电子设备在使用多年之后都会出现性能下降的问题,苹果的Mac计算机自然也不例外。当你发现Mac运行缓慢&#xff…

Tkinter的Menu与Messagebox

菜单控件Menu 在当前界面的左上角创建一个菜单,可创建二级菜单、三级菜单等等 具体语法: 创建一个菜单,并命名为menu menutkinter.Menu(root) 创建menu菜单的列表,并命名为filemenu filemenutkinter.Menu(menu,tearoff0) 在…

jar包导入失败/配置国内源的方法

注意:idea 的settings分为当前项目设置和新建项目设置两个部分,注意一些设置这两个地方都要调整。下面的步骤 修改好settings后,new projects 里的settings也要同样方法进行修改Maven中央仓库默认使用的是国外的,而国外访问速度很慢&#xff…

SpringBoot基础入门

简介 官网:https://spring.io/projects/spring-boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。 SpringBoot不是Spring官方的框架模式,而是一个团队在Spring4.0版本上二次开发并开源…

《深入浅出计算机组成原理》学习笔记 Day8

加法器1. 异或门与半加器2. 全加器3. 总结参考1. 异或门与半加器 异或门就是实现一个最简单的整数加法所需要使用的基本门电路。 当输入两位都是 11 的时候,还需要向更左侧的一位进行进位。这个就对应一个与门,也就是当加数和被加数都是 1 的时候&…