1 解答
十二月 12, 2022
04:58 PM
对于ECU来说,常见的是CAN WAKEUP(CAN总线唤醒):
- Wait-Bus Sleep Timer 超时后就关闭CPU供电,状态机直接进入CPU-Power OFF,宏观上就是ECU的Bus-Sleep状态。
- ECU可能被任意唤醒(比如,没有指定帧唤醒功能的SBC芯片,可以被任意CAN报文唤醒),唤醒之后立即打开CPU供电,初始化程序,进入Bus-Sleep状态,因为唤醒时间是个持续的过程,不是触发一下就完了,CPU可以继续读唤醒信号判断其有效性。如果有效,进入Nomal-NM状态,否则就停留在Bus-Sleep状态。在Bus-Sleep状态下,只要收到任意CAN报文就复位Wait-Bus Sleep Timer,直到网络上没有任何CAN报文,Wait-Bus Sleep Timer超时后关闭CPU供电。
- CPU Power-OFF后程序停止,因此无法判定蓄电池是否发生Power OFF事件。即不能判定ECU视角的Power-ON或Power-OFF。
1 回复
十二月 12, 2022
04:58 PM
对于ECU来说,常见的是CAN WAKEUP(CAN总线唤醒):
- Wait-Bus Sleep Timer 超时后就关闭CPU供电,状态机直接进入CPU-Power OFF,宏观上就是ECU的Bus-Sleep状态。
- ECU可能被任意唤醒(比如,没有指定帧唤醒功能的SBC芯片,可以被任意CAN报文唤醒),唤醒之后立即打开CPU供电,初始化程序,进入Bus-Sleep状态,因为唤醒时间是个持续的过程,不是触发一下就完了,CPU可以继续读唤醒信号判断其有效性。如果有效,进入Nomal-NM状态,否则就停留在Bus-Sleep状态。在Bus-Sleep状态下,只要收到任意CAN报文就复位Wait-Bus Sleep Timer,直到网络上没有任何CAN报文,Wait-Bus Sleep Timer超时后关闭CPU供电。
- CPU Power-OFF后程序停止,因此无法判定蓄电池是否发生Power OFF事件。即不能判定ECU视角的Power-ON或Power-OFF。