CAN 控制器配置正确 - 位定时已设定,进入正常模式,可看到接收到的帧。收到帧时,寄存器CANxRFS、CANxRID 和 CANxRDA会正确更新。我正在 LPC1768 上实现一个波特率为 500 kbps 的中断驱动 CAN 驱动程序。
但是,即使接收到完整的 CAN 帧,也不会在 canxSR 或 canxGSR 中设置 RBS(接收缓冲区状态)位。我没有在CANxCMR中设置RRB位来版本接收缓冲区,因此在版本缓冲区之前,RBS位应保持设置状态。
能否解释一下为什么 RBS 位可能无法设置,或者在这种设置下 LPC1768 CAN 是否存在任何已知问题?
感谢您的支持。
你好@Nisarga
根据你的描述
我想您可以查看 AFMR 注册表。
我认为,如果绕过了接收过滤,报文就会直接进入接收寄存器(CANxRFS/RID/RDA/RDB),而不会更新 RBS。
敬请查阅。
BR
哈利