//设置波特率
CAN_InitStructure.CAN_SJW=tsjw; //同步宽度
CAN_InitStructure.CAN_BS1=tbs1; //时间段1
CAN_InitStructure.CAN_BS2=tbs2; //时间段2
CAN_InitStructure.CAN_Prescaler=brp; // 分频系数
CAN_Init(CAN1, &CAN_InitStructure); //初始化can1
注意的是:
假设APB时钟为36M,代码中这样定义参数时。
CAN_Mode_Init(CAN_SJW_1tq,CAN_BS2_8tq,CAN_BS1_9tq,4,CAN_Mode_LoopBack);
计算波特率为:36M/((8+9+1)*4)=500Kbps