|
环境:stm32g474re,加上主板,CAN总线上一共有9个节点,其中有一个节点是CAN扩展帧协议,其他为CANFD BRS开启,标准帧 配置:仲裁域 1M 80%,数据域 5M 75%,开启自动重传 问题现象:通信过程,长时间测试,偶现主板无法往总线上刷数据,我们是一主多从方式,主板依次轮询每个节点的信息,一问一答式,总线上测到无信号,CAN寄存器看到无bus-off,DLEC 和LEC错误码都为7,TEC为0,REC为1,TXFIFO为满 尝试手段: CAN H和CAN L短路,这样会导致bus off,和我们看到的寄存器状态不匹配,排除; 把主板的CAN从总线断路,TXFIFO为满,应该是开了重传,fifo数据一直在尝试重发,新的数据进不来。这样符合看到问题时的寄存器状态,但是重新接回总线,异常能够恢复,FIFO恢复正常,但是我们的问题是出现后,一直无法恢复,通过重新初始化CAN能够恢复,所以不像是CAN总线接触不良。 问题:所以还有什么情况会造成FIFO一直满的情况,还发送不出数据到总线 |
STM32G474 HRTIM的single-shot功能,如何使用?
无源晶振开关电路设计
为什么DMA搬运数据只搬运最后1个字节的数?
如何将电机转速度控制在0.1RPM以下?我尝试过将SPEED_UNIT改为480,电机转速度可以控制在0.125RPM,但最转到250RPM时,编码器计数好像溢出了
STSPIN32G4内部驱动电压输出问题
使用Hal库的SPI读取磁边传感器导致STM32G4无法运行
定时器触发SPI
stm32G474RBT3的flash擦除寿命是多少?
stm32g474RE 输出4相波形,如何精准输出ADC触发的问题。
STM32G491 flash擦除的问题,请教大神
微信公众号
手机版
这样是可以解决的,但我想知道原因在哪。感觉CAN的fifo被挂起推不出数据了。