




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、如何使用STM32_V3.5版本固件庫(kù)在Keil4下建立工程模板準(zhǔn)備工作如下:1. 下載STM32F10x_StdPeriph_Lib_V3.5.0固件庫(kù)。2. 下載并安裝好Keil uVision V4.10(MDK4)開(kāi)始:1. 首先解壓STM32F10x_StdPeriph_Lib_V3.5.0固件庫(kù)。PS:保留一個(gè)備份,你懂的。解壓得到如圖1所示的幾個(gè)文件夾。其中_htmresc文件夾:里面是ST的Logo圖片,沒(méi)有多大用,可以刪除。Libraries文件夾:是比較重要的文件 包含STM32的系統(tǒng)文件和大量頭文件,即庫(kù)文件。Project文件夾:里面為STM32F10x的例程和工程模板
2、。Keil對(duì)應(yīng)的就是 MDK-ARM 文件下的工程模板。也可以利用這個(gè)工程模板為原型建立自己的工程模板本文不用此法。Utilities文件夾:里面有一些實(shí)用程序,也沒(méi)多大用,可刪除。Release_Notes.html:版本注視,可刪除。stm32f10x_stdperiph_lib_um.chm:幫助文件,你懂的。2. 為了項(xiàng)目程序中的各部分條理清晰,我們建議工程文件夾時(shí)對(duì)其子目錄子下歸類(lèi)建立子文件夾,例建立一個(gè)工程文件夾My Project,在其下在創(chuàng)建五個(gè)子文件夾如圖2所示:其中:CMSIS文件夾:此文件夾從STM32F10x_StdPeriph_Lib_V3.5.0固件庫(kù)中的CMSIS
3、文件夾直接復(fù)制過(guò)來(lái)。Libraries文件夾:此文件夾從STM32F10x_StdPeriph_Lib_V3.5.0固件庫(kù)中的Libraries文件夾復(fù)制過(guò)來(lái)。只保留當(dāng)中的inc和src文件夾。即只包含頭文件。Startup文件夾:此文件夾從CMSISCM3DeviceSupportSTSTM32F10xStartup目錄下直接將Startup文件剪切出來(lái)。其中放置的是啟動(dòng)代碼,具體的代碼根據(jù)所用芯片的容量選擇,我們用的STM32F103C8為中等容量芯片,故選擇其中的startup_stm32f10x_md.s啟動(dòng)代碼,其他不用的可以刪除User文件夾:User文件夾為用戶(hù)的應(yīng)用程序,其中包
4、括main.c ,stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h四個(gè)文件,這四個(gè)文件可從V3.5.0固件庫(kù)ProjectSTM32F10x_StdPeriph_Template目錄下復(fù)制過(guò)來(lái),當(dāng)然main.c文件中的內(nèi)容可刪除。Project文件夾 :此文件夾用來(lái)存放項(xiàng)目文件。比如你等下要建立的工程名字My Program.uvproj,就放在這里。 在該文件下存放一些項(xiàng)目的輸出信息,OUTPUT,和LISTING信息,可以建立這兩個(gè)文件夾,之后就可以在OPTIONS FOR TARGET 'PROJECT' 里面進(jìn)行路徑設(shè)置。3.
5、 打開(kāi)Keil4軟件,在Project菜單下選擇New uVision Project新建新的項(xiàng)目,鍵入新的項(xiàng)目名稱(chēng)如My Program,保存到剛才的Project文件夾下面。4. 選擇芯片類(lèi)型,根據(jù)實(shí)際情況選擇芯片類(lèi)型,我們?cè)谶@里選擇STM32F103c8,確定后彈出一個(gè)窗口詢(xún)問(wèn)是否復(fù)制啟動(dòng)代碼,選擇“否”,如圖所示。這時(shí)新的項(xiàng)目工程就建立了。5. 這時(shí)點(diǎn)擊如圖所示的圖標(biāo)。彈出如下窗口:可根據(jù)實(shí)際需要添加相應(yīng)的文件,如圖所示:添加完后Project區(qū)域的樹(shù)形結(jié)構(gòu)如圖所示:6. 接下來(lái)要設(shè)置設(shè)置目標(biāo)選項(xiàng),點(diǎn)圖標(biāo)進(jìn)入Target Option界面如圖所示,在上面設(shè)置晶振的實(shí)際時(shí)鐘頻率,我們所用
6、的時(shí)鐘為8.00MHz。選擇Output項(xiàng)進(jìn)行如圖所示設(shè)置。點(diǎn)擊Listing選項(xiàng),并配置Listing文件的所在路徑為Projet下的Listing文件夾。接下來(lái)配置編譯器的路徑,設(shè)置如圖所示:在“ C/C+ ” 選項(xiàng)中我們可以加入預(yù)定義的宏, 這里請(qǐng)一定加入U(xiǎn)SE_STDPERIPH_DRIVER,STM32F10X_MD 這兩個(gè)宏。另外,我們?cè)谙旅娴摹癐nclude Paths”框中可以填入我們.h 文件所在的目錄,如“.Lib;.Libinc;.User”,方便編譯器搜索頭文件定義。如果現(xiàn)在編譯,還是有錯(cuò)誤的??梢韵染幾g下,因?yàn)閙ain.c中有頭文件#include "stm
7、32f10x.h"這句,在這個(gè)重要的頭文件里,并沒(méi)有定義好一些東西,分別在stm32f10x.h文件中取消對(duì) #define STM32F10X_MD和#define USE_STDPERIPH_DRIVER的屏蔽,這兩個(gè)定義好,才能正常工作,第一個(gè)是選擇存儲(chǔ)容量的型號(hào),每種芯片都不太一樣,所以讓你選擇,第二個(gè)是使用標(biāo)準(zhǔn)庫(kù)文件,因?yàn)槲覀兪且脦?kù)的,所以必須選擇,默認(rèn)是不用庫(kù)的,直接進(jìn)行寄存器的操作。也可以直接如下圖操作。在Define中添加USE_STDPERIPH_DRIVER,STM32F10X_MD作用是一樣的。選擇好后,直接編譯,恭喜你,成功了。最后要說(shuō)明的就是:圖4這個(gè)庫(kù)文
8、件,是必須選擇misc.c 和stm32f10x_rcc.c的。另外就是你選擇用什么功能,就把什么功能的c文件加進(jìn)去,我這里已經(jīng)加了一個(gè)對(duì)IO口的應(yīng)用的一個(gè)c文件。5:一些重要文件的說(shuō)明吧core_cm3.c/core_cm3.h 該文件是內(nèi)核訪問(wèn)層的源文件和頭文件,查看其中的代碼多半是使用匯編語(yǔ)言編寫(xiě)的。stm32f10x.h 該文件是外設(shè)訪問(wèn)層的頭文件,該文件是最重要的頭文件之一。例如向量等等。除了這些該頭文件還定義了和外設(shè)寄存器相關(guān)的結(jié)構(gòu)體,如:typedef struct _IO uint32_t CRL; _IO uint32_t CRH; _IO uint32_t IDR; _IO
9、 uint32_t ODR; _IO uint32_t BSRR; _IO uint32_t BRR; _IO uint32_t LCKR; GPIO_TypeDef; 包含了那么多寄存器的定義,那么在應(yīng)用文件中(例如自己編寫(xiě)的 main 源文件)只需要包含stm32f10x.h即可。在stm32f10x.h 8296行#ifdef USE_STDPERIPH_DRIVERi nclude "stm32f10x_conf.h"#endif這里定義了 i nclude "stm32f10x_conf.h"system_stm32f10x.c/h 該頭文件也
10、可以稱(chēng)為外設(shè)訪問(wèn)層的頭文件和源文件。在該文件中可以定義系統(tǒng)的時(shí)鐘頻率,定義低速時(shí)鐘總線和高速時(shí)鐘總線的頻率,其中最關(guān)鍵的函數(shù)就是 SystemInit()了,這個(gè)后面會(huì)詳細(xì)介紹??傊@兩個(gè)文件是新固件庫(kù)V3.5的重點(diǎn),有了它糧也大大簡(jiǎn)化了使用 stm32的初始化工作。 stm32f10x_conf.h 這個(gè)文件和 V2 版本的庫(kù)的內(nèi)容是一樣的,需要使用哪些外設(shè)就取消哪些外設(shè)的注釋。stm32f10x_it.c/h 這兩個(gè)文件包含了 stm32中斷函數(shù),在源文件和頭文件中并沒(méi)有把所有的中斷入口函數(shù)都寫(xiě)出來(lái),而只寫(xiě)了 ARM內(nèi)核的幾個(gè)異常中斷,其他的中斷函數(shù)需要用戶(hù)自己編寫(xiě)。stm32f10x_i
11、t.c的最后給了這樣一個(gè)模板。/*/ /* STM32F10x Peripherals Interrupt Handlers */ /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ /* available peripheral interrupt handler's name please refer to the startup */ /* file (startup_stm32f10x_xx.s). */ /* * brief This handles PPP interr
12、upt request. * param None * retval None */ /*void PPP_IRQHandler(void) */ 從注釋中的英文提示可以看出,中斷向量的名稱(chēng)可以從相應(yīng)的啟動(dòng)代碼中找出,例如可以startup_stm32f10x_md.s 中找到 USART1 中斷函數(shù)的名稱(chēng)USART1_IRQHandler。其他的中斷函名可以以此類(lèi)推,一一獲得,在這里我就不一一復(fù)述了。 Libraries文件夾 該文件夾有包含兩個(gè)文件夾,一個(gè)是 src文件夾,另一個(gè)是 inc文件夾,顧名思義,一個(gè)里面放的是元件一個(gè)里面放的是頭文件。這兩個(gè)文件夾包含了所有的 STM32 的外設(shè)驅(qū)動(dòng)函數(shù),其實(shí)和 V2 版本也
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 兌美容院合同范例
- 7 2023年汽車(chē)市場(chǎng)發(fā)展藍(lán)圖分析報(bào)告
- 2025年中考化學(xué)二輪復(fù)習(xí)訓(xùn)練:科普閱讀題(含答案)
- 2025年蚌埠市城市投資控股集團(tuán)有限公司社會(huì)招聘11人筆試參考題庫(kù)附帶答案詳解
- 診所前臺(tái)服務(wù)流程
- 備戰(zhàn)2025年高考化學(xué)糾錯(cuò)筆記系列專(zhuān)題08常見(jiàn)無(wú)機(jī)物及其應(yīng)用含解析
- 2025年浙江省中考英語(yǔ)人教版一輪復(fù)習(xí)教材梳理講義:七年級(jí)下冊(cè)(含答案)
- 投資學(xué)模擬試題含答案
- 2025國(guó)網(wǎng)內(nèi)蒙古東部電力有限公司高校畢業(yè)生招聘約638人(第一批)筆試參考題庫(kù)附帶答案詳解
- 認(rèn)知知覺(jué)障礙的作業(yè)治療(作業(yè)治療技術(shù)課件)
- 2025年湖南司法警官職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)必考題
- 數(shù)學(xué)-廣東省2025年深圳市高三年級(jí)第一次調(diào)研考試(深圳一模)試題和答案
- 全國(guó)第三屆職業(yè)技能大賽(無(wú)人機(jī)駕駛(植保)項(xiàng)目)選拔賽理論考試題庫(kù)(含答案)
- 法人授權(quán)委托書(shū)
- 印萌打印平臺(tái)合作協(xié)議VIP
- 中國(guó)建設(shè)銀行信貸業(yè)務(wù)申請(qǐng)書(shū)
- 液壓氣動(dòng)技術(shù)課程設(shè)計(jì)
- 更改、重發(fā)或補(bǔ)發(fā)原產(chǎn)地證申請(qǐng)書(shū)
- 作物栽培學(xué)復(fù)習(xí)資料完整版要點(diǎn)
- 安全生產(chǎn)工作指導(dǎo)手冊(cè)
- 全國(guó)電子百拼中學(xué)組練習(xí)題
評(píng)論
0/150
提交評(píng)論