您好!
当我们测试 DCAN 驱动器睡眠和唤醒功能时,我们发现在过程中将生成脱离总线,睡眠和唤醒似乎正常唤醒,但当我们连续执行20次休眠唤醒时,脱离总线将在过程中生成至少一次。
那么、为什么会生成脱离总线? 希望您能提出建议。
BR、谢谢
Ming
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.
您好!
当我们测试 DCAN 驱动器睡眠和唤醒功能时,我们发现在过程中将生成脱离总线,睡眠和唤醒似乎正常唤醒,但当我们连续执行20次休眠唤醒时,脱离总线将在过程中生成至少一次。
那么、为什么会生成脱离总线? 希望您能提出建议。
BR、谢谢
Ming
您好、Ming、
如果 CAN 控制器发生故障、或者错误(ERRC 寄存器中的 TEC 或 REC)累积得非常严重、则状态转换为 总线关闭 状态。 CAN 控制器与 CAN 总线断开连接。
CAN 协议定义了5种机制来检测损坏的消息:位监控、格式检查、填充检查、ACK 检查和 CRC 检查。 位监控和 ACK 检查由发送器执行。 接收器执行格式检查、填充检查和 CRC 检查。 每当 TX 错误计数器超过255的值时、它将切换到脱离总线状态。
这可能是由您的设置、睡眠唤醒序列引起的。 总线关断仅用于休眠唤醒节点还是其他节点?
您好!
当处理总线间关断状态且 Boff = 1时、TEC = 0xf8、REC = 0。 错误状态寄存器的值为000002E7。
1、为什么 TEC 不是255处于脱离总线状态?
2、为什么读取错误状态寄存器后 WakeUpPnd 不会复位?
3、在哪里可以找到一些用于脱离总线和休眠唤醒的 DCAN 演示代码?在 TI websit 中,轮询模式将更好。
BR、谢谢
Ming