|
本帖最后由 51黑ren 于 2015-12-23 21:15 編輯
以STM32F103VE為例。
1. 下載固件庫(kù)
登錄官網(wǎng)www.st.com
進(jìn)入主頁(yè),點(diǎn)擊Support,進(jìn)入標(biāo)簽ToolsandSoftWare/Software/MCU Software/Stm32 MCUs Software/Stm32EmbeddedSoftware/STM32 Standard PeriperalLibraries,下載固件庫(kù)。如下圖所示:
2. 創(chuàng)建工程文件夾
工程目錄不能包含中文路徑,創(chuàng)建文件夾Doc、User、Lib、Project。
將固件庫(kù)中Libraries下的兩個(gè)文件夾CMSIS、STM32F10x_StdPeriph_Driver拷貝到Lib目錄。
將固件庫(kù)中Project目錄下的模版文件夾中的h文件和c文件拷貝到User目錄。刪除main.c中和評(píng)估板有關(guān)的部分,只留下main()函數(shù)和#include"stm32f10x.h"語(yǔ)句。如下圖所示:
3. 新建Keil工程
新建Keil工程,并將Lib文件夾及子文件夾中c文件和startup目錄下對(duì)應(yīng)芯片類型的.s文件添加進(jìn)來(lái)。需要注意的是,由于startup目錄下的s文件包含各種芯片類型的,在keil工程中需添加與當(dāng)前芯片型號(hào)一致的s文件,且只能添加一個(gè)。否則編譯出錯(cuò)。
4. 配置Keil工程
工程中部分文件說(shuō)明:
stm32f10x_conf.h:底層驅(qū)動(dòng)的包含文件,可在該文件中將不需要使用到的片上外設(shè)的頭文件包含去掉,以提高編譯速度。
stm32f10x_it.c:中斷程序所在文件,各個(gè)片上外設(shè)的中斷名可參考啟動(dòng)文件startup_stm32f10x_xx.s
startup_stm32f10x_xx.s:?jiǎn)?dòng)文件,定義了芯片從上電到進(jìn)入main()函數(shù)的過(guò)程及中斷函數(shù)名等。最后的“xx”根據(jù)芯片型號(hào)選擇為hd、ld、md等。
stm32f10x.h、system_stm32f10x.c、system_stm32f10x.h是對(duì)應(yīng)于F1系列芯片的系統(tǒng)文件。
------------------------------------------------------------------------------------------------------------------
KEIL5以上創(chuàng)建工程是件比較簡(jiǎn)單的事,只需要添加用戶代碼,而不用進(jìn)行一系列的包含配置。還是以STM32F103VE為例。
1. 到www.keil.com/pack
下載對(duì)應(yīng)CPU型號(hào)的pack包,并點(diǎn)擊安裝好。
2. 點(diǎn)擊新建工程,選擇型號(hào)。
3. 根據(jù)需要使用的資源,配置Run-timeEnvironment
4. 在工程中添加用戶代碼
5. 配置Jlink下載
關(guān)于固件庫(kù)的結(jié)構(gòu)等,可查看ST的文檔“STM32F10xStandardPeripherals Library Peripheral’s DriversDescription”該文檔也可從keil軟件中的Runtime-Environment直接進(jìn)入獲取。
以下是該文檔中較為經(jīng)典的解釋:
|
|