一 .基础工程配置
以STM32F103C8T6为例,新建一个不包含中文路径的文件夹,打开CubeMX,先进行基础工程配置,主要是时钟,Debug端口,中断优先级配置。
1.使用HSE时钟,使用Crystal/Ceramic Resonator(晶体/陶瓷晶振);
APB1 外设时钟频率为36M,这个数据一会会用到。
2.使能调试端口,选用Serial Wire模式;
3.选择优先级分组为2 bits for pre-emption priority 2 bits for subpriority;
4.工程管理设置,主要是工程存储位置,编译环境选择,是否复制所有库文件,是否生成独立的.c和.h文件。
二 . CAN 外设配置
1.配置CAN 通信参数
由于F1的 CAN外设挂载在APB1上,时钟配置后APB1的时钟速率为36MHz,目标通信速率为500KHz,由公式:
BaudRate = 1/NominalBitTime
NominalBitTime = 1tq + tBS1 +tBS2
设置参数如下:
CAN时钟分频参数为9,BS1为5,BS2为2,CAN模式为Nomal模式。
并开启CAN的接收中断 USB low priority or CAN RX0 interrupt,设置中断优先级。
三. 生成工程文件
点击 “GENERATE CODE”按钮生成工程文件,打开工程文件并编译。