CAN_CAN波特率计算方法
计算公式如下:
CANbps=tpclk1/((TS1[3:0]+1+TS2[2:0]+1 +1)*(BPR[9:0]+1))
tpclk1:APB1的时钟周期
TS1[3:0]:时间段1 设置值。定义了时间段1 占用了多少个最小时间单元,实际值为(TS1[3:0]+1)。
TS2[2:0]:时间段2 设置值。定义了时间段2 占用了多少个最小时间单元,实际值为(TS2[2:0]+1)。
BRP[9:0]:最小时间长度设置值
该例程主频为96M,pclk1为主频的1/2,故pclk1为48M。
CAN_BS2_5tq表示TS2[2:0]的值为4
CAN_BS1_6tq表示TS1[3:0]的值为5
brp的值为12
结合CAN初始化的库函数得BRP[9:0]的值为11
波特率=48M/((4+1+5+1+1)*(11+1))=333Kbps