主题中讨论的其他器件:TCAN1043
大家好、
这是与 CAN 协议相关的问题、而不是 CAN 驱动程序问题。
我的客户现在正在使用 TCAN1043评估特定错误条件下的 CAN 系统行为。
初始状态:
-
仅包含2个节点,即节点 A 和节点 B
-
节点 A 是发送方、节点 B 是接收方。
-
节点 A 定期向节点 B 发送消息
-
节点 A 和节点 B 处于正常模式。
步骤1:
-
通过切换 NSTB=L 将节点 B 设置为“进入睡眠模式”
-
节点 A 会定期向节点 B 发送消息
步骤2:
-
由于 CAN 消息适合 WUP、节点 B 的 INH 可能保持为高电平。
步骤3:
-
通过将 NSTB=低电平切换为高电平、将节点 B 状态设置为正常模式。
-
通过将 NSTB=高电平切换为低电平、将节点 B 状态设置为进入睡眠模式。
测试结果:
当发送错误计数器=255时、节点 A 变为总线关闭。
在大多数情况下,节点 B 处于三种模式之一:进入睡眠模式、睡眠模式或待机模式,因此假定节点 B 无法将 Ack 发送到节点 A
问题1)当节点 B 处于进入睡眠模式或睡眠模式或待机模式时、节点 B 是否不向节点 A 发送 Ack?
问2)如果节点 B 不发送 ACK,节点 A 将保持“错误认可”状态,并且从不计数到255。 正确吗?
此致、