STM32F1 在 MDK 下新建标准库函数工程
一、准备
- STM32F10x 官方固件库;
- keil5 MDK 软件
二、步骤
(一)创建项目文件夹,复制固件库文件
- 新建项目文件夹,名称自定,如 Project
- 在文件夹中再新建 4 个文件夹,分别取名为 CMSIS、Lib、Startup、User、Basic、Hardware,每个文件夹的作用如下表所示,此处参考来源于洋桃电子工作室:
文件夹名称 | 作用 |
---|---|
CMSIS | 内核驱动程序 |
Lib | 内部功能的基本函数库 |
Startup | 单片机启动程序,该部分文件为汇编语言编写 |
User | 用户程序,包括主函数,项目开发多数在这里完成编写 |
Basic | 内部功能的驱动程序 |
Hardware | 外部硬件的驱动程序 |
- 为每个文件夹粘贴指定的官方固件库文件
- CMSIS 文件夹中需要粘贴的文件在官方固件库中的路径如下所示:
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\stm32f10x.h
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.h
因此,CMSIS 文件夹中的文件如下所示:
- Lib 文件夹中需要粘贴的文件在官方固件库中的路径如下所示:
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\inc
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\src
因此,Lib 文件夹中的文件如下所示:
- Startup 文件夹中需要粘贴的文件在官方固件库中的路径如下所示:
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm(里面所有的文件复制)
因此,Startup 文件夹中的文件如下所示:
- User 文件夹中需要粘贴的文件在官方固件库中的路径如下所示:
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\main.c
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\stm32f10x_conf.h
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\stm32f10x_it.c
STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\stm32f10x_it.h
因此,User 文件夹中的文件如下所示:
(二)keil5 创建标准库函数工程
- 打开 keil5,新建工程
- 创建新工程,起名为 Project
- 在弹出来的对话框中选择相应的 MCU,作者的开发板使用的芯片是 STM32F103C8T6,因此选择 STM32F103C8
- 在弹出的对话框中,选择取消
- 得到工程最基础的文件夹
- 将刚才复制好的库文件加载到 keil5 中
- 点击菜单栏中的三个小方块按钮
- 在弹出的对话框中,在 Groups: 这一列里面点击方框按钮,手工输入刚才的几个文件夹名称,注意要名称一致,新建好了之后将原先自带的文件名 “Source Group 1” 点击红叉按钮删除
输入完成后如图所示:
- 在新建好的文件夹中添加对应的文件
每个文件夹添加文件之后的截图如下:
-
此时完成了文件的添加,点击 OK 退出
-
此时可以在软件左侧的文件树中看到刚刚添加的文件
- 进行初始化的配置
- 点击菜单栏中魔术棒的按钮
- 首先设置单片机的晶振为 8.0MHz
- 勾选生成 Hex 文件
- 在 C/C++中输入处理器类型,USE_STDPERIPH_DRIVER,STM32F10X_MD
- 在 C/C++中输入包含文件的路径,然后点击 OK
- 在文件树中选择 main.c 文件,删除原有的内容,就可以按照自己的项目需求来填写代码了