[应用相关] Stm32f10x 新建工程详解

[复制链接]
764|9
 楼主| comparison 发表于 2019-7-16 16:16 | 显示全部楼层 |阅读模式
环境:

STM32F10x 3.5固件库。下载地址
http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f10x_stdperiph_lib.zip

MDK4.23 编译器


一、第一步新建工程 取名 NewProject
图1
2012053100283611.jpg

 楼主| comparison 发表于 2019-7-16 16:17 | 显示全部楼层
二、选择芯片型号

图2

345605d2d880d4250f.png

三、点否,不加载启动文件(后面我们自己手动添加)

图3

823265d2d8816dcb19.png
 楼主| comparison 发表于 2019-7-16 16:18 | 显示全部楼层
四、在工程下新建STM32LIB,OBJ,LIST,APP四个文件夹(文件名可自定)。

在STM32LIB文件夹下新建M3文件夹。

复制STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport下

core_cm3.c  core_cm3.h两个文件到M3文件夹中。



复制:

STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x下

stm32f10x.h  system_stm32f10x.c  system_stm32f10x.h 两个文件到M3文件夹中。



复制:

STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template下

stm32f10x_conf.h 一个文件到M3文件夹中。



         复制:

STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm下 startup_stm32f10x_hd.s一个文件到M3文件夹中。

我用的芯片256k的FLASH。所以选择startup_stm32f10x_hd.s。



说明:

cl:互联型产品,stm32f105/107系列

vl:超值型产品,stm32f100系列

xl:超高密度产品,stm32f101/103系列 超大容量 512-1024K

ld:低密度产品,FLASH小于64K

md:中等密度产品,FLASH=64 or 128

hd:高密度产品,FLASH大于128-512



复制:

STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver下的inc和src两个文件夹到STM32LIB文件内



到这里需要复制的文件以经复制完了。下面来配置工程:

参图

88065d2d88333fd22.png

674545d2d883dd6d07.png

139035d2d88462a6f4.png

703415d2d88502a176.png

先配置这些, 还有一项要等到 添加完成文件再配置。
 楼主| comparison 发表于 2019-7-16 16:19 | 显示全部楼层
现在向MDK中加载文件如图:

769265d2d886d25306.png

如下图加载

483015d2d888029a03.png

667955d2d88885d6e0.png

点OK如下图

456335d2d8897a8421.png

Main.c文件内容:

1 int main(void)
2 {
3
4 }
 楼主| comparison 发表于 2019-7-16 16:21 | 显示全部楼层
继续配置先前没有配置完了部分。

646645d2d88b82b419.png

这里做一定的说明:



为什么在define项中添加STM32F10X_HD,USE_STDPERIPH_DRIVER这两项?

define项是MDK的预宏定义栏。

注意:STM32F10X_HD,USE_STDPERIPH_DRIVER这两项中间是逗号隔开。



在stm32f10x.h中有这以下代码:

#ifdef USE_STDPERIPH_DRIVER

   #include "stm32f10x_conf.h"

#endif
由此可知 添加USE_STDPERIPH_DRIVER宏定义是为了加载stm32f10x_conf.h文件。

到这里,新建工程就完成了,编译调试,无误后就开始代码之旅吧。
八层楼 发表于 2019-8-9 11:27 | 显示全部楼层
非常感谢楼主分享
观海 发表于 2019-8-9 11:33 | 显示全部楼层
非常感谢楼主分享
guanjiaer 发表于 2019-8-9 11:38 | 显示全部楼层
非常感谢楼主分享
heimaojingzhang 发表于 2019-8-9 11:48 | 显示全部楼层
感谢楼主分享
keaibukelian 发表于 2019-8-9 11:53 | 显示全部楼层
感谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

417

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部