所有 FNMC、SDMC 和 SLPC 都设置为 0。 但是,当我发出进入睡眠模式的命令时,它会立即切换到待机模式。你知道为什么会发生这种情况吗?
我按照以下步骤进行了操作:
1。启用了唤醒引脚 上升沿
2。已禁用 CAN 唤醒
3.将 CMC 设置为离线
4.将 MC 设置为待机
5.将 MC 设置为睡眠
发出睡眠命令后,我检查了主状态,发现是 0x14(收到非法睡眠模式命令)。
你好,文真、
UJA1169(A) 只有在满足以下所有条件时才会进入睡眠模式:
- 发出睡眠模式命令(通过 SPI,MC = 0b001)。
- 无唤醒事件待处理(所有事件状态位清零)。
- 至少一个常规唤醒源已启用(CAN 唤醒或 WAKE 引脚)。
- 睡眠模式未永久禁用(SLPC = 0)。
如果不满足其中任何一个条件,SBC 将不会进入睡眠模式。 取而代之的是,它会过渡到RESET模式,然后过渡到待机模式,并设置RESET源状态位 (RSS) 以指明原因(例如0b10100 = 收到非法睡眠模式命令)。
Screenshot 2026-01-02 091145.png
因此,在发出睡眠指令之前,请确认事件状态寄存器已清零,并仔细检查 WAKE 引脚的配置和使能位。
希望对您有所帮助。
BRs, Tomas