網(wǎng)上搜索了一些方法,匯總了下,挑選了一個可行的寫出來,如下。
2、選擇芯片型號!。這里用:STM32F103C8。
3、提示是否拷貝,選擇否!
4、新建文件夾!在工程文件根目錄下新建幾個文件夾:User、CMSIS、Lib、Obj、List(這里是為了養(yǎng)成良好的習(xí)慣!)User放置用戶代碼;CMSIS放置固件庫的啟動文件,Lib放置庫文件
PS:普及(CMSIS:Cortex Microcontroller Software Interface
Standard,是 ARM Cortex 微控制器軟件接口標(biāo)準(zhǔn),是ARM公司為芯片廠商提供的一套通用的且獨立于芯片廠商的處理器軟件接口。)
5、拷貝!把固件庫的Libraries \ STM32F10x_StdPeriph_Driver目錄下的inc和src這兩個文件夾復(fù)制到剛才新建的Lib文件夾中。
startup_stm32f10x_hd.s,按順序是小,中,大容量Flash單片機的啟動文件。我們這里用的是
STM32F103C8有128 K
Flash。所以,稍后,把startup_stm32f10x_md.s添加到我們的工程中。不同大小的Flash對應(yīng)的啟動文件不同,這點要注意。
6、建組!鼠標(biāo)右擊“Target1”→Manage
Componets,彈出如下的對話框,在中間列依次建立:CMSIS、Lib、User文件夾,將原有的Source
Group1改為startup,并在最右列依次添加所需要的文件。
PS:src里面的驅(qū)動文件,也可以需要哪個就添加哪個,這里全部添加,是為了后續(xù)開發(fā)的方便。并且,我們可以通過配置stm32f10x_conf.h文件來選擇性添加,只有在stm32f10x_conf.h中被配置的文件才會被編譯。
PS:注意,在組里面添加的,都是匯編文件和C文件 ( 即,以 .s和 .c為后綴的文件 ),即,都是源程序文件 ( 可能還有其它類型的文件,但是,都必須是源程序文件
),并且,一般地,所有源程序文件都必須添加到組里面才行。但是,頭文件是不需要添加到組里面的。
7、設(shè)置!右鍵“Target1”→Options
For Target “Target1”,彈出下面的對話框。
PS:注意:定義STM32F10X_HD,是因為我們用的芯片是大容量的。添加了STM32F10X_MD這個宏以后,庫文件里面為大容量芯片定義的寄存器,我們都可以使用了。芯片是小容量,或者,中容量時,宏要換成,STM32F10X_LD或者STM32F10X_HD。其實,不管什么容量,我們只要添加STM32F10X_HD這個宏即可。當(dāng)我們用小,或者,中容量的芯片時,那些為大容量定義的寄存器,不去訪問就是了,反正,也訪問不了。
例如:..\..\..\Libraries\STM32F10x_StdPeriph_Driver\inc;這里主要有幾個必須要添加,一是inc的庫,也就是頭文件庫;二是CMSIS的路徑必須要添加!
PS:注意:因為編譯器不會自動搜索指定目錄的子文件夾,所以每個路徑都要添加,就算,路徑1是路徑2的子目錄,路徑1和路徑2都必須同時添加,才行。 在添加目錄時要注意,在下圖界面下,必須把藍色條移到最后的空白處,再點擊“OK”,最后一個路徑才能被添加成功,否則,最后一個路徑會丟失。

編譯即可
PS:main.c中的頭文件需要引用。例如:#include "stm32f10x_gpio.h"、#include
"stm32f10x_rcc.h"等