我正在使用CAN总线连接两个lpc2129微控制器。从发送器立即发送消息,但在接收器侧,接收中断正在连续执行。
我在开始时收到ACK错误,因为它是接收中断的优先级较低的中断,但稍后接收中断会连续发生,即使我只从发送器发送一次,数据也会正确接收。 更多细节是: 波特率:125 kbps 收发器:MCP2551 验收过滤器:启用(不使用FULL CAN模式)
请帮助我如何消除此错误ACK错误。
答案 0 :(得分:1)
您需要消除“源头”的ACK错误。
如果接收器正在接收中断,那么它必须认为它已经确认了帧(你不应该为错误的CAN帧获得接收中断)。
因此,Tx端必须“看不到”ACK位 - 然后它会继续重试帧,因此您的连续接收中断。
我建议在示波器上查看总线以查看发生了什么 - 您可能会看到ACK位未正确地从接收器节点进入发送器节点。然后弄清楚为什么应该(可能是狡猾的焊接?)