前言
最近遇到一个特殊需求:在ECU系统休眠后需要通过网络管理报文和诊断报文唤醒网络,但是应用报文不能唤醒网络。通常情况下,在ECU系统休眠后,AUTOSAR架构中只能配置通过网络管理报文唤醒网络或者所有报文都能唤醒网络,没有单独的诊断报文唤醒网络的配置。那在AUTOSAR架构下如何来实现这个功能了?
本文先详细介绍这个需求在AUTOSAR架构下遇到的问题,然后再给出一个具体的解决办法。
Note: 使用Vector的工具,以及TJA1043的CAN收发器。
正文
1.面临的问题
1.1 TJA1043的INH脚唤醒事件
ECU系统休眠后TJA1043的INH脚处于floating高阻态,系统休眠后通过硬件外部电路下拉到低电平状态/Low-level,ECU系统休眠前把TJA1043的INH脚配置为唤醒脚,系统休眠后如果收到任意的CAN报文,TJA1043的INH脚会被拉高,产生CAN收发器的硬件唤醒事件(Low-Level to High-Level)。如果ECU系统是断电系统,那么INH脚应该接在SBC上,因为SBC是常电状态,检测到INH的唤醒事件后就会给ECU-MCU供电,MCU冷启动。如果是ECU系统是常电系统,INH脚应该接到MCU的一个中断唤醒脚上,检测到INH的唤醒事件后,中断唤醒MCU,MCU中的软件可以选择继续跑,也可以通过软件Reset后重新热启动。
参考文章:关于CanTrcv模块的几点思考
总之,无论是断电系统还是常电系统,在ECU系统休眠后,任意的CAN报文都能唤醒ECU。
1.2 EcuM配置网络唤醒
实现网络唤醒,需要在EcuM模块中配置唤醒源,同时配置唤醒源检测。

开启EcuM的网络唤醒源校验Validation后需要User实现三个Callout函数函数:
1) EcuM_StartWakeupSources(EcuM_WakeupSourceType);
2) EcuM_StopWakeupSources(EcuM_WakeupSourceType);
3) EcuM_CheckValidation(EcuM_WakeupSourceType);


参考文章:AUTOSAR架构下关于CanNm的几点思考
1.3 CanIf配置唤醒报文过滤
CanIf中可以配置Wakeup Check Valition,有两种配置可选:
1)所有报文可以通过校验
2)只有NM报文可以通过校验

1.4ComM网络唤醒
EcuM调用CanIf接口校验网络唤醒源成功后,EcuM就会调用ComM_EcuM_WakeUpIndication请求通信,ComM在CommunicationAlllowed后就会调转到Full Com状态开启网络。

参考文章:AUTOSAR网络通信问题分析
1.5诊断报文唤醒面临的问题
我们的需求是:在ECU系统休眠后需要通过网络管理报文和诊断报文唤醒网络,但是应用报文不能唤醒网络。
但是从上文中我们可以得知:
1)如果CanIf配置为所有报文可以校验通过,那么应用报文也会通过校验,从而唤醒网络。
2)如果CanIf配置为只有NM报文可以通过校验,那么诊断报文也就不能通过校验, 从而诊断报文不能唤醒网络。
3)只要ECU被唤醒后,因为程序已经跑起来了,理论上肯定可以让诊断报文来唤醒网络的,但是在AUTOSAR架构下没有提供这个配置,代码框架已经被限制,要实现这个功能就不知道在哪里实现。
也就是说,在AUTOSAR架构下按通常配置是无法实现ECU系统休眠后需要通过网络管理报文和诊断报文唤醒网络,但是应用报文不能唤醒网络的。
2.解决的办法
如果能想办法在EcuM调用CanIf_CheckValication的时候能让诊断报文通过校验(NM报文也通过校验,应用报文不能通过校验)就能解决这个问题。
上一篇:你的车上有多少电动机
下一篇:采用11898.2V电源实现符合ISO 5-3标准的3V HS-CAN通信
推荐阅读最新更新时间:2026-03-25 13:13
- 边缘计算主机盒选购指南:五大核心指标解析
- Arm AGI CPU 更多细节:台积电 3nm 制程、Neoverse V3 微架构
- Arm AGI CPU 重磅发布:构筑代理式 AI 云时代的芯片基石
- Arm 拓展其计算平台矩阵,首次跨足芯片产品
- 阿里达摩院发布RISC-V CPU玄铁C950,首次原生支持千亿参数大模型
- 边缘 AI 加速的 Arm® Cortex® ‑M0+ MCU 如何为电子产品注入更强智能
- 阿里达摩院发布玄铁C950,打破全球RISC-V CPU性能纪录
- VPU中的“六边形战士”:安谋科技Arm China发布“玲珑”V560/V760 VPU IP
- 利用锚定可信平台模块(TPM)的FPGA构建人形机器人安全
- 用于 7VIN 至 16VIN、1.5V 和 1.2V 输出的 LTM4628EV DC/DC 模块稳压器的典型应用电路
- 使用 Analog Devices 的 LTC3728LIGN 的参考设计
- DER-406 - 适用于 A19 灯的 5.76 W 高 PF 非隔离降压-升压型 TRIAC 调光 LED 驱动器
- ADR5045B 5V 输出精密微功率并联模式电压基准的典型应用
- LT3970EDDB-3.42 2.5V 降压转换器的典型应用
- MC78M08BDTG 8V 电流调节器的典型应用
- LT1021DCN8-5 精密电压基准的典型应用
- DER-282 - 100W, 扁平(11 mm), LLC DC-DC转换器
- REF193 低压差开尔文连接电压基准的典型应用电路
- LT3088EM 线性稳压器用于添加软启动的典型应用

Follow me第三季第3期源代码
【Follow me第三季第3期】任务全部代码
现代雷达系统的信号设计
CLC5612IMX
BFR340T






京公网安备 11010802033920号