工具/软件:
您好支持团队:
收发器 tcan1145 出现问题。 当唤醒消息 WUF 周期设置为 1ms 时、在 MCU 的睡眠模式期间、收发器的 PN 相关功能会首先启用、并且待机和睡眠设置都成功。 可能“INH"没有“没有立即控制 MCU 断电、大约 400ms 后 MCU 成功进入睡眠和断电状态。 在睡眠过程中、会持续发送 WUF。
同时、确认睡眠模式状态标志为 0。
您能告诉我原因是什么吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:
您好支持团队:
收发器 tcan1145 出现问题。 当唤醒消息 WUF 周期设置为 1ms 时、在 MCU 的睡眠模式期间、收发器的 PN 相关功能会首先启用、并且待机和睡眠设置都成功。 可能“INH"没有“没有立即控制 MCU 断电、大约 400ms 后 MCU 成功进入睡眠和断电状态。 在睡眠过程中、会持续发送 WUF。
同时、确认睡眠模式状态标志为 0。
您能告诉我原因是什么吗?
您好 Sean、
感谢您的答复。
对不起,我没有在图片上清楚地标记它。
图中的粉色波形表示从断电功能开始(此时我提高了 IO 电平)到 MCU 完全进入断电模式且 IO 变为低电平的过程。 此过程包括 PN 相关选项的设置、待机设置和睡眠设置。
从屏幕截图中可以看出:通常情况下、当收发器设置为睡眠模式时、MCU 会立即断电、并且 IO 引脚被拉至低电平。 发生问题时、收发器也会设置为睡眠模式。 但此时 MCU 不会立即断电。 在我看来、INH 并未立即被拉低、因为 MCU 的电源由 INH 控制。 程序仍执行约 400 毫秒。

我们进行了另一个实验:设置睡眠后、在随后的 while 循环中、我们不断切换另一个 IO。

结果表明、 在程序运行约 400ms 后、MCU 最终断电。

此处的睡眠模式状态标志是什么?
我们咨询了 FAE 和 FAE、要求我们确认寄存器 52h 中的 SMS 位置位是否已设置。 我们确认没有激活。



您是否指的是 0x10 寄存器中的 MODE_SEL 位? 在 SLEEP 模式下、这些位应为 001。
我将以同样的方式读取 0x10 寄存器、并在今天提供一些反馈。
此致、
吴成宇
您好 Sean、
我 在 (SLEEP 后读取 0x10 寄存器、然后发现在正常情况下、该寄存器设置为 001)SLEEP。 但 当它是异常的,它没有被设置成 001(睡眠)。



那么、 为什么当唤醒消息 WUF 周期设置为 1ms 时、收发器在成功通过 SPI 设置后未立即进入睡眠模式、大约 400 毫秒后、它进入睡眠模式并控制 INH 以进行断电?您能告诉我们您的看法如何?
此致、
吴成宇
尊敬的 Chengyu:
但 当它异常时、它没有立即设置为 001(睡眠)。
在这种情况下、MODE_SEL 读取是多少?
此外、在睡眠过程中发送 WUF 周期的目的是什么? 启用选择性唤醒后、器件将开始监测总线、如果有有效的 WUF、它将设置 CANINT 标志。 这可能在正常模式和待机模式下发生、具体取决于 MCU 对从 CAN 唤醒的反应、可能会阻止收发器进入睡眠模式。 我建议 在进入睡眠模式的同一 SPI 写入中设置 SW_EN =1、因为这些位在同一寄存器中。 在进入睡眠模式之前、添加清除所有中断寄存器的步骤。
请告诉我这是否可以解决问题。
此致、
Sean
您好 Sean、
很抱歉这么长时间没有回复您。
在本例中 mode_sel 的读取结果是什么?
我读取了模式并处于待机状态
如果有有效的 WUF、它将设置 CANINT 标志。 这可能在正常模式和待机模式下发生、具体取决于 MCU 对从 CAN 唤醒的反应、可能会阻止收发器进入睡眠模式。 [/报价]为什么接收到的 WUF 会影响从待机到睡眠的收发器? MCU 中的软件不处理这个逻辑,它 的特点是 TCAN1145?
[报价 userid=“552124" url="“ url="~“~/support/interface-group/interface/f/interface-forum/1566517/tcan1145-q1-after-setting-the-sleep-mode-the-mcu-was-not-immediately-powered-off-by-the-control/6035324 ]我建议 在进入睡眠模式的同一 SPI 写入中设置 SW_EN =1、因为这些位在同一个寄存器中。 [/报价]我会考虑你的建议。 谢谢你。
此致、
Wuchengyu