AUTOSAR专项--实战问题:多路CAN配置后引发的休眠问题

在汽车工程中,当增加一路不支持唤醒的子网CAN后,系统出现不休眠及电流异常问题。通过分析BswM状态迁移,发现休眠条件未满足,主要是ESH_State未进入READ_NVM状态。解决方案包括修改条件运算符或完善休眠条件设置。提供BswM状态迁移图以供参考。
摘要由CSDN通过智能技术生成

1、问题背景

        在之前的工程中,一直用的是一路CAN;最近由于整车拓扑的变化,新增了一路子网CAN,且这路CAN不支持唤醒,但需要中转网络管理报文。

       在导入DBC之后,通过vector工具点点点,生成代码,下到板子上一看,出问题了。系统不休眠,且报文停发后电流始终在300mA左右。这到底是啥原因呢?

2、问题定位

        根据我们之前模式管理的介绍,我们知道MCU的休眠主要由BswM和EcuM协同控制。首先是BswM的状态需要切换,根据AUTOSAR专项--BswM状态分析我们知道,正常运行时,BswM处于RUN状态,而要休眠,就需要从RUN->POST_RUN->PRE-SHUTDOWN->WAIT_FOR_NVM->SLEEP,最后将控制权移交给EcuM,由EcuM选择进入Go Halt/Poll。

        很明显,系统没有休眠,就只能从BswM的状态迁移开始入手。首先在RUN之后的每个状态的ActionList入口处打断点,单步执行,最后发现BswM没有进入到Nor

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CyberSecurity_zhang

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

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

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

打赏作者

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

抵扣说明:

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

余额充值