久芯网

关于STM32G4的外部晶振设置can通信波特率

avatar zhoutuo 提问时间: 2023-09-21 17:13:59 / 未解决
目前使用G4配置CAN,波特率500k,在选择内部晶振为外设时钟时,可以通过计算配置500k正常通信,但是使用外部24M晶振时,只有把APB1设置为16M时可以正常通信,一旦采用其他频率时,波特率均不正常无法通信。然后目前项目要求外设时钟必须要160M因此现在解决不了了,请问有人知道是什么原因吗,或者有什么其他解决方法

如需获得 STM32G4 等器件的更多信息,请点击链接或 点击此处 联系在线客服!

5个回答
  • avatar 废鱼
    回答时间: 2023-09-21 17:36:52

    CAN波特率是通过总线时钟频率,楼主看一下对应的芯片使用的是哪个频率,一般是系统时钟的1/2。然后再重新算波特率需要配置的几个参数。

  • avatar 小歆-2051663
    回答时间: 2023-09-21 18:10:01

    CAN波特率=APB总线频率/BRP分频器/(1+tBS1+tBS2) 根据你的总线频率重新配一下

  • avatar zhoutuo
    回答时间: 2023-09-21 18:36:12

    已经是按照总线频率计算配置了

  • avatar 快乐的向日葵
    回答时间: 2023-09-21 18:58:54
    zhoutuo 发表于 2020-9-18 14:22
    已经是按照总线频率计算配置了

    问题找到了吗?APB1的频率是多少?time quantum显示是多少(按照你的配置,显示应该是62.5ns)?

  • avatar butterflyspring
    回答时间: 2023-09-21 19:31:41

    一般来说,可以用外部的还回模式测试一下,既可以测试发送的波特率,也可以测试是否能正常接收。

会员中心 微信客服
客服
回到顶部