概述
介绍如何建立STM32F10X的MDK工程模板(基于标准固件库)。
正文
- 新建一个文件夹命名为 Template。
- 在文件夹下新建三个文件夹,分别为,core,stdlib,user。
- 前往官网下载标准固件库。
- 拷贝
Libraries\CMSIS\CM3\CoreSupport下的所有文件到Template\core。 - 拷贝
Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm下对应的启动文件到Template\core下。 - 拷贝
Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x下的stm32f10x.h,system_stm32f10x.c,system_stm32f10x.h到Template\core下。 - 拷贝
Libraries\STM32F10x_StdPeriph_Driver下的inc和src两个文件夹到Template\stdlib下。 - 拷贝
Project\STM32F10x_StdPeriph_Template下的main.c,stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h,system_stm32f10x.c到Template\user下。 - 用 MDK 新建工程到
Template\user目录下。
- 添加宏
USE_STDPERIPH_DRIVER。 - 根据STM32 – Keil中启动文件的选择和固件库宏定义选择对应的宏如STM32F103R6就填入
STM32F10X_HD(如果后续编译出现问题可以移除该宏重试)。 - 多个宏之间用半角逗号分隔。
- 添加下列头文件路径
- 添加下列分组并向分组中添加对应的文件
- core 分组中添加
Template\core下所有的*.c,*.s文件。 - stdlib 分组添加
Template\stdlib\inc下所有的 *.c 文件。 - user 分组添加
Template\user下所有的 *.c 文件。
- 清空 main。c 中的内容,写一个空的
int main(void)函数进去。 - 编译工程,见招拆招。