文章目录
- 一、基础入门
- 二、工程初步建立
- [三、HSE 和 LSE 时钟源设置](#三、HSE 和 LSE 时钟源设置)
- 四、时钟系统(时钟树)配置
- [五、GPIO 功能引脚配置](#五、GPIO 功能引脚配置)
- [六、配置 Debug 选项](#六、配置 Debug 选项)
- 七、生成工程源码
- 八、生成工程源码
- 九、用户程序下载
- 问询、帮助
一、基础入门
f0 pack下载:
https://www.keil.arm.com/packs/stm32f0xx_dfp-keil/versions/
参考资料下载:
http://47.111.11.73/docs/boards/stm32/zdyz_stm32f103_warshipV4.html
STM32CubeMX下载:
https://www.st.com.cn/zh/development-tools/stm32cubemx.html


二、工程初步建立
使用STM32CubeMX进入到这里:

三、HSE 和 LSE 时钟源设置

四、时钟系统(时钟树)配置
配置系统时钟

接下来我们还需要配置AHB、APB1、APB2 和 Systick 的分频系数,为 STM32 的片上外设或 M0 内核设置对应的工作
时钟,为后续使用这些硬件功能做好准备.

五、GPIO 功能引脚配置

六、配置 Debug 选项
由于 CubeMX 默认把 Debug 选项关闭了,这样会给我们带来麻烦:用 CubeMX 生成的工
程编译下载一次后,后续再次下载就会提示错误,因此我们要把 Debug 选项打开。
打开SWD配置下载:
如果已经不小心关闭了 Debug 选项,那么下次下载的时候按住复位键,等到工程提示的时候松开复位键即可,因为 STM32 的芯片默认复位上电时的 Debug 引脚功能是开启的。
七、生成工程源码
Project Name:工程名称,填入工程名称(半角,不能有中文字符)
Project Location:工程保存路径,点击 Browse 选择保存的位置(半角,不能有中文字符)
Toolchain Folder Location:工具链文件夹位置,默认即可。
Application Structure:应用的结构,选择 Basic(基础),不勾选 Do not generate the main(),
因为我们要其生成 main 函数。
Toolchain/IDE:工具链/集成开发环境,我们使用 Keil,因此选择 MDK-ARM,Min Version 选
择 V5.27,这里根据 CubeMX 的版本可能会有差异,我们默认使用 V5 以上的版本即可。
Linker Settings 链接器设置:
Minimum Heap Size 最小堆大小,默认(大工程需按需调整)。
Minimum Stack Size 最小栈大小,默认(大工程需按需调整)。
MCU and Firmware Package 是 MCU 及固件包设置:
MCU Reference:目标 MCU 系列名称。
Firmware Package Name and Version:固件包名称及版本。
勾选 Use Default Firmware Location,文本框里面的路径就是固件包的存储地址,我们使用
默认地址即可。(这里因为我有两个版本的固件包,所以它默认使用最新的,这个关系不大,就
用新的)。这样工程生成的设置就设置好了

由于 CubeMX 默认勾选了复制所有的库,即工程中不使用到的代码也会复制进来,为了节
省 CubeMX 生成工程的空间,我们勾选生成工程时只复制用到的库(这一步是可选操作,大家
根据自己的实际选择)

八、生成工程源码

九、用户程序下载
设置好这里下载即可:

问询、帮助
你如果需要帮助,请看这里:
csharp
https://docs.qq.com/sheet/DUEdqZ2lmbmR6UVdU?tab=BB08J2