
配置CAN以FIFO模式发送,单片机周期发送不同ID的CAN报文,同时使用软件ZCANPRO周期发送不同ID的报文到CAN总线上来模拟总线上的负载。尝试了延时或等待有空闲邮箱时再将报文添加进去。最终发现都有丢帧的情况。 调试如下:固定发送报文数量,并仿真,对将要发送的数据添加到邮箱的成功状态进行计数。 第一种情况:等待所有发送邮箱都为空,再添加报文,出现丢帧。发20000帧,成功添加进邮箱的有20000帧,收到的有19971帧。 第二种情况:延时一段时间,再添加报文,出现丢帧。发20000帧,成功添加进邮箱的有18682帧,收到的有18605帧。
|
STM32G473CBUx的模拟地
STM32G474, I2C设备地址,总出现多余地址0x20,是什么原因?
最近在做单极倍频SPWM
为什么STM32G431的串口用不了2.5M的波特率
上电连接USB显示DFU模式
STM32G491RE上电出现DFU模式
STM32G431的3.3V引脚对地电阻变小
STM32G473RC timer8的CCDS bit, Capture/Compare DMA selection.
STM32G431 数据手册上有个图有点不理解
STM32G473RC多个定时器同步的问题
最终发生丢帧会不会跟你添加的干扰有关? 你可以尝试将测试干扰信号逐渐减弱比较下。
尽管CAN支持失败重发,我相信CAN总线的负载能力也是有限的。
谢谢提醒,我意识到了是CAN重发机制导致的,先前调试功能时将自动重发功能失能了,将其使能问题就解决了。
[md]呵呵 原来还没开出错重发功能哦。