打开STM32CubeMX软件,选择File
选择新建工程
在打开的窗口输入单片机型号
在右下角选择单片机型号,然后点右上角 start project,开始新建工程。
接下来设置调试接口,在左边System Core中选择 SYS,然后在右右边debug选项中选择Serial wire,设置仿真器,一般STlink,Jlink 都选择这个。如歌这个不选,代码就没办法使用仿真器下载。
下面设置时钟,左边选择RCC,我这里使用的是外部时钟,所以在High Speed clock 选择外部晶振。
下面设置IO口,在这里设置一个LED口PC13,左边选择GPIO,然后右边直接在单片机的PC13口上单击鼠标选择输出模式。
然后在中间区域设置IO口模式,这里使用默认设置就行,在User Label的位置写上LED,这样在程序中就会将PC13引脚起名为LED,方便程序中使用。设置完成之后,就可以看到右边单片机PC13口名称变成了LED。
通过右边单片机的引脚就可以看到使用了那些IO口,使用的IO口会变成绿色。
接下来设置时钟,在上面选择CLOCK Configuration 。
时钟源选择HSE,然后直接在HCLK的位置输入需要的时钟频率,这里输入72,然后按回车键,系统就会自动计算分频和倍频系数。当然也可以字节设置系数。
最后设置工程
输入工程名,选择工程路径,选择编译器和编译器的最小版本。
这里选择的编译器为IAR
接下来设置代码生成方式,这里选择只添加使用到的库,同时外设初始化单独生成.c和.h文件。
最后点右上角的Gnerate code按钮,直接生成代码。
代码生成完成之后,在弹出的对话框中直接选择打开工程。
此时就会使用IAR编译器自动打开工程
可以看到工程框架和初始化代码都已经选好了。
接下来自己添加上LED灯闪烁的代码就行了。
在while函数中添加自己的代码,这里要注意,自己的代码必须添加到注释里面 BEGIN 和END之间,这样下次使用CubeMX生成代码的时候自己写的代码不会被覆盖掉,如果写在了其他地方,那么代码就会被CubeMX生成的代码覆盖掉。
接下来在IAR中选择自己使用的仿真器,工程名上右键,选择Option
在Debugger中选择自己的仿真器,然后点击确定按钮。
如果使用的是jlink的swd下载还需要在jlink/jtrace 选项中选择SWD接口,这里默认选择的是JTAG接口。这里不设置的话下载程序时会报错。
最后编译下载工程,可以看到板子上的LED指示灯已经开始闪烁了。