F407芯片CAN总线收发耗时的测量

2019-07-20 18:01发布

STM32F407单片机通过CAN总线收发数据,一帧数据16字节,波特率1Mbps,8字节数据全部填充,标准ID。

我的理解是:1Mbps的速率,发送一位需要1us(理论上),16字节总共128bit,所有至少需要128us。而我测量的时间,发送一帧需要260us,时间相差一倍!

我测量的方式是:在数据写入寄存器TTR、TDLR、TDHR后申请发送请求的时候开始测量,在中断标志位检测到RQCP、TXOK被置位(即检测到发送成功标志)的时候结束测量。这一段时间我理解为CAN控制器完成了一帧数据的发送。

现在不确定是否我的理解有问题,还有相差一倍的时间有点离谱。求各种指点!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。