STM32 CAN 波特率计算分析

这里写目录标题

  • 前言
  • 时钟分析
  • 时钟元到BIT

前言

STM32 CAN 波特率计算分析_第1张图片
CubeMX中配置CAN波特率的这个界面刚用的时候觉得非常难用,怎么都配置不到想要的波特率。接下来为大家做一下简单的分析。

时钟分析

STM32F4的CAN时钟来自APB1
STM32 CAN 波特率计算分析_第2张图片
在如下界面配置,最好配置为1个整一点的数。这里配置为40MHz
STM32 CAN 波特率计算分析_第3张图片
时钟进入CAN之后,还会被CAN分频系数再分一次
STM32 CAN 波特率计算分析_第4张图片
到此,时间元的时钟为40Mhz/10=4Mhz,也就是上面的250ns

时钟元到BIT

一个CAN bit由若干时钟元组成,如下
STM32 CAN 波特率计算分析_第5张图片
BS1我们配置的为3个时钟元,BS2我们配置的为4个时钟元,对应如下
STM32 CAN 波特率计算分析_第6张图片
那么一个比特时常为250ns *(1+3+4)=2000ns,对于500Kbps




结束

你可能感兴趣的:(嵌入式硬件,单片机,stm32)