AUTOSAR中EcuM、ComM和CanNm的关联

ComM的内外部唤醒

ComM可以通过NM保持网络的唤醒,同时也可以通过SM激活通信,总之就像一个通信的总管。
下面通过两种唤醒源来解释ComM的状态机。

1、内部唤醒

在这里插入图片描述
① 当ComM上电初始化时会首先进入NO COMMUNICATION状态,在该状态下ComM会持续循环判断是否有本地唤醒请求。
② 如果检查到有本地通信请求API执行(本地请求可以由SWC,DCM或者BSWM发起,API为Rte_Call_UR_XXX_RequestComMode()或者ComM_RequestComMode()),状态则将往FULL COMMUNICATION迁移(过程中ComM会Allow通信通道,让CanSM打开Transceiver和Controller,BswM启动收发IPDU),网络被激活。
③ 进入FULL COMMUNICATION后,由于是本地唤醒,NM首先会进入Network Requested,执行正常的报文收发,能一直主动去保持Network的唤醒状态。
④ 一旦本地ComM释放后,则Network进入Ready Sleep状态,NM PDU停发。
⑤ 如果这时其它ECU也都不需要通信,等收到NM Prepare-Bus-Sleep的指示后,Network进入Prepare Bus Sleep状态并停止发送Tx IPDUs。ComM进入SILENT COMMUNICATION状态。
⑥ 在SILENT COMMUNICATION状态下如果收到了NM Message,则ComM又回到FULL COMMUNICATION中,并重新开始发送Tx IPDUs。
⑦ 在SILENT COMMUNICATION状态下如果没有收到NM Message,并且这时收到了NM Bus-Sleep的指示,则让CanSM去关闭通道(包括切换Transceiver和Controller的状态,停止接收Rx IPDUs),然后ComM进入NO COMMUNICATION状态。

2、外部唤醒

在这里插入图片描述
如果被外部唤醒,NM会进入被动状态(Passive)。然后当ComM进入Full Communication后也会默认往Ready Sleep状态里面去跑,除非持续收到外部的唤醒,否则不会去保持Network的唤醒状态

EcuM、ComM和CanNm的状态关联

① 在ComM处于NO COMMUNICATION状态时,由BswM来管理通信的允许与禁止。
② 只有当EcuM处于UP状态下才能保持ComM的FULL COMMUNICATION状态和SILENT COMMUNICATION状态。
③ ComM的FULL COMMUNICATION状态对应着CanNm的Normal/Repeat/Ready Sleep三个子状态。
④ EcuM负责验证ECU的唤醒事件,然后发送指示给ComM,ComM请求ComM模式变更,但是需要由EcuM和BswM一起来配合执行。
⑤ 可以请求ComM切换通信模式的用户有SWC、DCM、BswM;DCM在诊断通讯激活DCM_ActiveDiagnostic时可以请求ComM进入FULL COMMUNICATION状态,BswM可以根据用户配置的行为列表请求ComM执行相应通信请求。
⑥ 用户只能请求FULL或者NO COMMUNICATION,SILENT模式及其子状态只是为了同步AUTOSAR NM。
在这里插入图片描述

CanNm状态机

在这里插入图片描述

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

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

相关文章

TriCore TC162 Archievture Volume 笔记

说明 本文是 英飞凌 架构文档 TriCore TC162P core archiecture Volume 1 of 2 (infineon.com) 的文笔,稍作整理方便查阅,错误之处,还请指正,谢谢 :) 1. Architecture 2. General Purpose & System Register 名词列表&#…

【Python爬虫实战入门】:全球天气信息爬取

文章目录 一、爬取需求二、所需第三方库2.1 简介 三、实战案例四、完整代码 一、爬取需求 目标网站:http://www.weather.com.cn/textFC/hb.shtml 需求:爬取全国的天气(获取城市以及最低气温) 目标url:http://www.weath…

项目计划书(Word原件)

项目开发计划包括项目描述、项目组织、成本预算、人力资源估算、设备资源计划、沟通计划、采购计划、风险计划、项目过程定义及项目的进度安排和里程碑、质量计划、数据管理计划、度量和分析计划、监控计划和培训计划等。 软件资料清单列表部分文档: 工作安排任务书…

人脸采集训练识别

项目概述: 本地摄像头采集人脸数据集,通过训练得到trainingData.yml模型,加载haarcascade_frontalface_default.xml实现人脸识别。haarcascade_frontalface_default.xml 文件并不是一个完整的人脸识别模型,而是一个用于检测正脸&a…

Llama3-Tutorial之XTuner微调Llama3图片理解多模态

Llama3-Tutorial之XTuner微调Llama3图片理解多模态 基于 Llama3-8B-Instruct 和 XTuner 团队预训练好的 Image Projector 微调自己的多模态图文理解模型 LLaVA。 参考: https://github.com/SmartFlowAI/Llama3-Tutorial 1. 环境、模型、数据准备 1.1 配置环境 使用如…

【算法】双指针

下面是对双指针算法的题目总结和归纳,有需要借鉴即可。 双指针算法习题目录 1.移动零2.复写零3.快乐数4.盛最多水的容器5.有效三角形的个数6.和为s的两个数7.三数之和8.四数之和 1.移动零 题目链接:LINK 题解: 思路①:暴力求解 …

【备战软考(嵌入式系统设计师)】08 - 多媒体技术信息安全

多媒体技术 这内容比较杂,而且跟咱嵌入式的关系不大,但是软考里会考一些,下面我就结合我已经刷过的一千多道往年真题概括总结一下常考的知识点。 媒体分类 首先媒体分为五类: 感觉媒体,让人直接感觉得到的媒体&…

zTasker v1.88.1一键定时自动化任务

软件介绍 zTasker是一款完全免费支持定时、热键或条件触发的方式执行多种自动化任务的小工具,支持win7-11。其支持超过100种任务类型,50种定时/条件执行方法,而且任务列表可以随意编辑、排列、移动、更改类型,支持任务执行日志&a…

人脸美妆SDK解决方案,自研人脸美妆方案

美妆已经成为视频内容中不可或缺的一部分。从拍摄到编辑,再到直播,美妆效果都能为视频内容增添魅力,吸引更多观众的眼球。为了满足企业对于高质量美妆效果的需求,美摄科技凭借多年的技术积累和创新精神,推出了全新的人…

内容安全(DPI和DFI解析)

内容安全前言: 防火墙的本质其实就是包过滤,我们通常所说的安全设备(如:IPS、IDS、AV、WAF)的检测重心是应用层。下一代防火墙基于传统防火墙的拓展能力,就是可以将以上的安全设备模块集成在一起&#xff0…

智慧应急三维电子沙盘系统

深圳易图讯科技有限公司(www.3dgis.top)自主研发的智慧应急三维电子沙盘系统依托大数据融合物联网、云计算、移动互联、5G、BIM、三维GIS等新一代信息技术,集成了高清卫星影像、地形数据、实景三维模型、现场环境数据、物联感知信息、人口、建…

SRC公益漏洞挖掘思路分享

0x00 前言 第一次尝试挖SRC的小伙伴可能会觉得挖掘漏洞非常困难,没有思路,不知道从何下手,在这里我分享一下我的思路 0x01 挖掘思路 确定自己要挖的漏洞,以及该漏洞可能存在的功能点,然后针对性的进行信息收集 inurl…

一起深度学习(AlexNet网络)

AlexNet神经网络 代码实现: 代码实现: import torch from torch import nn from d2l import torch as d2lnet nn.Sequential(# 采用了11*11的卷积核来捕捉对象,因为原始输入数据比较大#步幅为4 ,可减少输出的高度核宽度。#输出通…

Compose 状态管理

文章目录 Compose 状态管理概述使用MutableStaterememberStatelessComposable & StatefulComposable状态提升rememberSaveable支持parceable不支持parceable 使用ViewModelViewModelProvider.Factory 使用Flow Compose 状态管理 概述 当应用程序的状态发生变化时&#xf…

(40)4.30数据结构(队列)

1.队列的基本概念 2.队列的顺序 #define MaxSize 10 #define ElemType int typedef struct { ElemType data[MaxSize]; int front, rear; }SqQueue;//1.初始化操作 void InitQueue(SqQueue& Q) { //初始化 队头,队尾指针指向0 Q.rear Q.fron…

环形链表理解||QJ141.环形链表

在链表中,不光只有普通的单链表。之前写过的的一个约瑟夫环形链表是尾直接连向头的。这里的环形链表是从尾节点的next指针连向这链表的任意位置。 那么给定一个链表,判断这个链表是否带环。qj题141.环形链表就是一个这样的题目。 这里的思路是用快慢指…

jenkins+gitlab+ansible-tower实现发布

前提准备: gitlab中上传相应的jenkinsfile文件和源码。 安装和破解ansible-tower。 安装jenkins。 大致流程:从gitlab中拉取文件,存放到windows机器上,使用nuget等进行打包到windows中,使用sshPublisher语句传输到远程…

LLMs之RAG:LangChain-Chatchat(一款中文友好的全流程本地知识库问答应用)的简介(支持 FastChat 接入的ChatGLM-2/LLaMA-2等多款主流LLMs+多款embe

LLMs之RAG:LangChain-Chatchat(一款中文友好的全流程本地知识库问答应用)的简介(支持 FastChat 接入的ChatGLM-2/LLaMA-2等多款主流LLMs多款embedding模型m3e等多种TextSplitter分词器)、安装(镜像部署【AutoDL云平台/Docker镜像】,离线私有部署支持RTX3…

yum仓库及NFS共享

yum简介 yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。 yum 实现过程 先在yum服务器上创建 yum repository(仓库),在仓…

stm32f103zet6_DAC_2_输出电压

实现效果 DAC输出的电压 同过电压表测量电压 1.DAC配置的步骤 初始化DAC时钟。配置DAC的GPIO端口。设置DAC的工作模式(例如,是否使用触发功能,是否启用DAC中断等)。启动DAC。 2常用的函数 函数 HAL_DAC_Start() - 开启指定…