環境:
- STM32F10x 3.5固件庫。下載地址
http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f10x_stdperiph_lib.zip
- MDK4.23 編譯器
一、第一步新建工程 取名 NewProject
圖1
二、選擇芯片型號
圖2
三、點否,不加載啟動文件(后面我們自己手動添加)
圖3
四、在工程下新建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文件內
到這里需要復制的文件以經復制完了。下面來配置工程:
參圖
圖4
圖5
圖6
圖7
先配置這些, 還有一項要等到 添加完成文件再配置。
現在向MDK中加載文件如圖:
圖8
如下圖加載
圖9
圖10
點OK如下圖
圖11
Main.c文件內容:
1 int main(void) 2 { 3 4 }
繼續配置先前沒有配置完了部分。
如圖12
這里做一定的說明:
為什么在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文件。

代碼可知,添加STM32F10X_HD宏是選定芯片內部資源定義。
到這里,新建工程就完成了,編譯調試,無誤后就開始代碼之旅吧。