Open Yohozzy opened 3 years ago
遇到了相同的问题
这个问题还没有解决吗?
4.1.0之后好像解决了
我现在使用任然会卡住,使用的是STM32F407VET6板子,LOOPBACK模式才不会卡住,而且该模式下CAN调试器能收到发的数据,NORMAL模式怎么都发不出去,而且会卡住,程序配置是按照官网例程来的,也接收不到,使用的版本是4.1.1。
我看了下代码,这个 issue 里面提到的发送失败 continue 的问题已经改掉了,你遇到的也许是其他地方导致的, 比如驱动
我看了下代码,这个 issue 里面提到的发送失败 continue 的问题已经改掉了,你遇到的也许是其他地方导致的, 比如驱动 多谢!我再找找
canstat 查看的消息是这样的
找到了,我用的CAN收发器不行。500k能用,1m的时候拿示波器看,明显信号波形 不对
找到了,我用的CAN收发器不行。500k能用,1m的时候拿示波器看,明显信号波形 不对
can组件驱动中_can_int_tx 调用底层发送msg时 如果有暂时无法恢复的总线错误会卡死
rt_inline int _can_int_tx(struct rt_can_device can, const struct rt_can_msg data, int msgs) { int size; struct rt_can_tx_fifo *tx_fifo;
}
当总线存在临时物理断开时 调用底层can->ops->sendmsg(can, data, no) 会一直失败 然后再下面分支的continue一直循环