在做CAN设备的时候遇到一个很奇怪的问题。问题描述:
USB+CAN,用的STM32的库。我的CAN中断的优先级是最高的,在1Mbps下做大量数据传输测试的时候,有突发性的CAN占用了所有的MCU时间的情况,其他低优先级的中断或函数根本没有时间运行。我通过BUS hound 监测USB的传输,在这段时间中USB没有相应,经过推测,USB的中断根本没有响应,导致数据包来不及传给PC就丢了。我检查过CAN接收到的数据包,接收过程完整,没有丢包。
请问:
1、CAN会在不带令牌包的情况下传输数据吗?有的话是什么情况。
2、有木有大侠给分析下,到底是哪里出问题了。 |