STM32F4的CAN每次发送都要间隔1.4ms左右才能保证不丢包,为什么

2019-07-20 15:44发布

波特率为1M,我要发送很多包数据(确认发送成功再发送下一包的),如果每个发送之间不加延时,接收的一方就一定会丢包,这样是对的吗?
如果从CAN总线原理来看的话应该是有问题的,而且在DSP上面就可以不加延时(实验过得),有谁知道为什么吗?
接收的一方是FIFO满了之后进中断接收的,中断里面只接收什么事情都没做(测下来大概就30几us),所以说应该不会是接收慢导致丢包的。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
wfwwfw
1楼-- · 2019-07-20 20:49
 精彩回答 2  元偷偷看……
正点原子
2楼-- · 2019-07-21 02:38
 精彩回答 2  元偷偷看……
wfwwfw
3楼-- · 2019-07-21 08:08
正点原子 发表于 2017-3-29 20:13
检查接收和发送数据的流程,是否存在耗时比较久的地方,优化这些代码。

就是一个循环发送90次,然后再延时900MS再循环发送90次。接收的程序什么都没有就等着进中断

一周热门 更多>