Autosar NM : 网络是如何被唤醒的<一>

目录

一、按照唤醒方式,可以将ECU网络节点类型划分为两类:

二、远程唤醒CAN网络是如何被唤醒的?

1、ECU唤醒

 2、ECU唤醒检查

3、EcuM唤醒验证

 4、关于CanSM

三、Autosar NM 网络管理状态机

四、总结


一、按照唤醒方式,可以将ECU网络节点类型划分为两类:

本地唤醒:唤醒源来自ECU自身模块,如KL15硬线唤醒或自身Senser感知唤醒等。(如TBox 4G或Bluetooth)。

远程唤醒:唤醒源来自ECU所在节点的网络报文。本章以收发器TJA1043为例做重点分析。

二、远程唤醒CAN网络是如何被唤醒的?

1、ECU唤醒

《TJA1043.pdf》P10有如下说明:

https://mp.csdn.net/mp_download/manage/download/UpDetailed

 即CAN唤醒需要满足twake(显性) -> twake(隐性) -> twake(显性)时序的总线变化。这种唤醒方式并不一定需要收到一帧完整的报文才能唤醒。电路设计中,收发器的INH引脚需要与SBC的WAKE Pin连接或者μc的供电电路连接,进而给μc供电,唤醒MCU(此时并未唤醒NM)。

 

 2、ECU唤醒检查

《AUTOSAR_SWS_ECUStateManagerFixed》.pdf   P145

https://download.csdn.net/download/u013464897/87873969

CAN transceiver wake up by interrupt:

芯片上电后,从main函数开始允许,完成EcuM、BswM等底层模块的初始化,打开OS,开始允许周期性task。 周期性任务开始运行之后,CanTrcv_MainFunction开始调度,在这个函数中,需要周期性检测Trcv是否有唤醒标志,检查到唤醒标志后,调度EcuM_CheckWakeup()函数通知EcuM。

 EcuM_CheckWakeup() -> CanIf_CheckWakeup() -> Can_CheckWakeup()  -> CanTrcv_CheckWakeup()  -> EcuM_SetWakeupEvent() -> EcuM_ValidateWakeupEvent() -> 

ComM_EcuM_WakeUpIndication() (激活相关ComM通道到FULL_COM)。

3、EcuM唤醒验证

P147

 CAN wake up validation:

 4、关于CanSM

CAN总线的控制流由CanSM和ComM完成,CanSM的状态跳转如下:

 Com层报文的发送和接收的开启需要同时满足两个条件:1、Com协议栈在COMM_FULL_COMMUNICATION; 2、对应的PDU Group打开。

三、Autosar NM 网络管理状态机

Autosar NM主要根据以下状态机跳转,跳转条件及细节此处不在展开,可参考以下:

https://blog.csdn.net/weixin_42967006/article/details/121715270

网络管理状态机

  1. Autosar NM网络管理为直接网络管理,加入或退出不需要其他节点建立令牌环;
  2. CAN网络管理相关报文通过CanIf -> CanNM,不需要经过PduR、Com等转换, 由CanNM_RxIndication()实现;
  3. 主动激活时,本地NM要进入立即快发模式;
  4. NM报文的控制位向量(Control Bit Vector):

在这里插入图片描述

四、总结

部分参考以下博客,好文章!

(87条消息) 【Autosar Can网络远程唤醒】_tja1043 远程唤醒_你好好想想^的博客-CSDN博客https://blog.csdn.net/weixin_42438961/article/details/130337985?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-130337985-blog-111030447.235%5Ev38%5Epc_relevant_anti_vip_base&spm=1001.2101.3001.4242.1&utm_relevant_index=1

Autosar网络管理:节点收到NM Msg,是如何被动唤醒的? - 知乎 (zhihu.com)

  • 4
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值