工具/软件:
尊敬的团队:
我们的 ECU 中有2个 TCAN1145 CAN 收发器、每个收发器连接一个单独的 CAN 通道。 这些器件均配置为特定 CAN 帧的选择性唤醒、并需执行所有必要的步骤、如将 SWCFG 位设置为1、清除中断寄存器、在进入睡眠模式之前将 SW_EN 设置为1。
CAN 1:WUF 为0x123 ID
CAN2:WUF ID 为0x456。
在这些器件中接收到的唤醒帧打开 MCU、作为 MCU 初始化的一部分、这两个器件的中断寄存器被清除、切换到正常模式、选择性唤醒配置完成。
我们在测试设置中观察到一种奇怪的行为、以下步骤对此进行了说明。
1. ECU 的两个通道都连接到测试设备。 Vector CANoe 用作测试环境。
2.收发器处于睡眠模式。 MCU 现在已关闭。
发送 CAN 帧0x123 CAN2 从独木舟。 独木舟中的跟踪窗口显示确认错误(没有接收器、这是为什么?)。
4.看起来像在后台该工具不断重试发送同一帧、并可以观察到该工具统计窗口中的发送错误计数器达到128且状态更改为被动。
5.现在发出 WUF 0x123 CAN1 从独木舟。 这是的有效 WUF CAN1 。 独木舟中的跟踪窗口一次显示相同的确认错误。 与上述步骤类似、工具再次尝试发送、MCU 现在唤醒。 (假设第一个错误帧被视为 WUP、下一帧被视为 WUF、并且由于它是有效的 WUF、MCU 会唤醒)。
6.此时我们读取两个收发器中断寄存器。 并且两个收发器中都设置了 CANINT 标志。 此外、已验证帧错误计数器溢出位是否为 未设置 为了确保 SW_EN 未被禁用、并且因此、任何 CAN 帧都被视为 WUF 并设置 CANINT。
查询如下:
1。CAN1中的 CANINT 位= 1是可以接受的。 但是、当没有有效的 WUF 时、我们不知道即使在 CAN2中 CANINT 位也是1的原因。
2.独木舟中的确认错误是否会影响收发器的选择性唤醒配置?
此致、
Punith Chandra