|
配置CAN以FIFO模式发送,单片机周期发送不同ID的CAN报文,同时使用软件ZCANPRO周期发送不同ID的报文到CAN总线上来模拟总线上的负载。尝试了延时或等待有空闲邮箱时再将报文添加进去。最终发现都有丢帧的情况。 调试如下:固定发送报文数量,并仿真,对将要发送的数据添加到邮箱的成功状态进行计数。 第一种情况:等待所有发送邮箱都为空,再添加报文,出现丢帧。发20000帧,成功添加进邮箱的有20000帧,收到的有19971帧。
第二种情况:延时一段时间,再添加报文,出现丢帧。发20000帧,成功添加进邮箱的有18682帧,收到的有18605帧。
|
记录使用Cube生成HRTIM工程时的一个bug
stm32 usb hid设备能发数据给PC,但不能接收PC的数据!!!
STSPIN32G4 STM32G431VBTx CAN FIFO发送数据帧随机变远程帧
如何将电机转速度控制在0.1RPM以下?我尝试过将SPEED_UNIT改为480,电机转速度可以控制在0.125RPM,但最转到250RPM时,编码器计数好像溢出了
STM32G474 HRTIM的single-shot功能,如何使用?
无源晶振开关电路设计
为什么DMA搬运数据只搬运最后1个字节的数?
STSPIN32G4内部驱动电压输出问题
使用Hal库的SPI读取磁边传感器导致STM32G4无法运行
定时器触发SPI
微信公众号
手机版
最终发生丢帧会不会跟你添加的干扰有关? 你可以尝试将测试干扰信号逐渐减弱比较下。
尽管CAN支持失败重发,我相信CAN总线的负载能力也是有限的。
谢谢提醒,我意识到了是CAN重发机制导致的,先前调试功能时将自动重发功能失能了,将其使能问题就解决了。
[md]呵呵 原来还没开出错重发功能哦。