【求助】使用cubemx生成的CAN代码分频数必须是2才能通讯

2019-12-12 18:14发布

使用cubemx生成的CAN代码,想要设置波特率为500K,APB1时钟为42M,但按照波特率计算方法算出的分频数、BS1、BS2设计,发现无法通讯,无意中试了修改一下分频数,发现只有分频数是2的时候才可以正常通讯(和周立功CAN通讯)。设置1M波特率(Prescaler = 2,CAN_SJW_1TQ,CAN_BS1_14TQ,CAN_BS1_6TQ)时可正常通讯,设置波特率500K时(Prescaler=4,CAN_SJW_1TQ,CAN_BS1_12TQ,CAN_BS2_8TQ)就无法通讯(用周立功CAN发送报文提示发送失败,上位机也收不到单片机发出的报文)。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。