STM32, GD32 cubemx CAN 低速率125kbps 报文丢失,解决了

用STM32 CUBEMX生成的GD32的 can程序,在500K波特率时可以正常使用,没有发现丢包,但速率降到250k和125k时,发送138帧数据,会丢失5个包。(系统时钟168M,APB1的时钟42M)

试了各种方法无法解决,后来发现分频系数设的很大为84,BS1为2,BS2为1,SJW为1,can波特率为42M/84/(2+1+1)=125k。

解决方法:

方法1:把系统时钟改成120M,APB1设成最大的60M,分频系数改为48,BS1为5,BS2为4,SJW为1,can的波特率为60M/48/(5+4+1)=125k。

方法2:把系统时钟改成168M,APB1设成42M,分频系数改为42,BS1为4,BS2为3,SJW为1,can的波特率为42M/42/8 = 125K。

这样就不丢包了,怀疑时分频系数设置的太大了。

相关推荐
余生皆假期-6 小时前
永磁同步电机二次起步处理
单片机·嵌入式硬件
DLGXY7 小时前
STM32——TIM定时器、定时中断、RCC时序(八)
stm32·单片机·嵌入式硬件
CQ_YM7 小时前
ARM之I2C
arm开发·单片机·嵌入式硬件·嵌入式
让世界再也没有bug8 小时前
测试工具之一 ------示波器
单片机·嵌入式硬件·硬件测试·嵌入式软件测试
CircuitWizard8 小时前
STM32 + 淘晶驰T1串口屏波形显示
stm32·单片机·嵌入式硬件
A9better8 小时前
嵌入式开发学习日志53——互斥量
stm32·嵌入式硬件·学习
Q_219327645510 小时前
基于单片机的个性化服装尺寸红外 测量仪的设计
单片机·嵌入式硬件
Polanda。10 小时前
定时器-PWM参数测量实验
stm32·单片机·嵌入式硬件
恶魔泡泡糖11 小时前
51单片机串口通信
c语言·单片机·嵌入式硬件·51单片机
wotaifuzao11 小时前
【Keil 5安装】keil 5最新版本安装+环境配置+下载百度资源分享(安装包,注册机等)
stm32·单片机·嵌入式硬件·mcu·学习·keil5·最新keil