CH32V305GBU6号称是有两路CAN的。
然而,其中CAN1的PA11、PA12,PB8、PB9,在CH32V305GBU6都是不存在的。仅剩的PD0、PD1,也是晶振专有管脚。
使用内部RC,我试下来CAN并不稳定,如果没有额外的频率校准,无法达到实用程度(我波特率250k)。
但如果要校准的话,应该是怎么个思路呢?
CH32V305GBU6号称是有两路CAN的。
然而,其中CAN1的PA11、PA12,PB8、PB9,在CH32V305GBU6都是不存在的。仅剩的PD0、PD1,也是晶振专有管脚。
使用内部RC,我试下来CAN并不稳定,如果没有额外的频率校准,无法达到实用程度(我波特率250k)。
但如果要校准的话,应该是怎么个思路呢?
您好,内部HSI应该是没有校准方法的,CAN不稳定的具体表现是什么。我这边在Demo板上修改EVT例程测试发送接收还是挺稳定的。注意PD0、1作为GPIO引脚使用时,注意将晶振和匹配电容都去掉。后续沟通可邮箱(lzs@wch.cn)继续沟通。
现在的EVT里有一个HSI_Calibration,是用HSE提供RTC的时钟来做标准时钟去粗略校准HSI的,校准步长大概是17000Hz,你也可以使用旁路提供HSE时钟。
@TECH62
一路CH32V的IRC时钟驱动的CAN,一路CANable模块(晶振),一对一互联。通信丢包比较多。
两边都用晶振,就一切正常了。
@Eveda
然而QFN28的CH32V305并没有LSE,也就没有精确的RTC用于校准HSI了吧。