一、 首先在電腦的某個目錄下創建一個空文件夾用來存放工程文件。創建好后在該文件目錄下分別創建CORE 、FWLIB、OBJ、SYSTEM、USER等五個子文件夾。至于這些文件夾名字,實際上是可以任取的,我們這樣取名只是為了行業規范。
二、打開keil軟件,點擊 Keil 的菜單: Project –>New Uvision Project,保存時將目錄定位到自己創建的文件下的USER子目錄下:
三、接下來會出現一個選擇 Device 的界面,就是選擇我們的芯片型號,我們選擇STM232F407ZE(如果使用的是其他系列的芯片,選擇相應的型號就可以了)特別注意: 一定要安裝對應的器件支持包才會顯示這些內容)。
這里是一些組件,直接點擊OK即可,這樣工程文件就算初步建立完成
四、打開TEST文件下的USER子目錄下可見包含 2 個文件,Listings 和 Objects 文件夾是 MDK 自動生成的文件夾,用于存放編譯過程產生的中間文件,這里可以自由設置,到時候會定位到OBJ里面去,這兩個文件可不用理他
五、現在打開官方固件庫,定位到STM32F4xx_DSP_StdPeriph_Lib_V1.4.0LibrariesSTM32F4xx_StdPeriph_Driver下面,
將目錄下面的 src,inc 文件夾 copy 到我們剛才建立的 FWLib 文件夾下面。
六、同樣定位到 STM32F4xx_DSP_StdPeriph_Lib_V1.4.0LibrariesCMSISDeviceSTSTM32F4xxSourceTemplatesarm下面,將文件 startup_stm32f40_41xxx.s復制到 CORE 目錄下面。
然后定位到目錄STM32F4xx_DSP_StdPeriph_Lib_V1.4.0LibrariesCMSISInclud, 將 里 面 的 四 個 頭 文 件 :core_cm4.h、core_cm4_simd.h、core_cmFunc.h 以及core_cmInstr.h 同樣復制到 CORE 目錄下面。
七、繼續定位到目錄:
STM32F4xx_DSP_StdPeriph_Lib_V1.4.0LibrariesCMSISDeviceSTSTM32F4xxInclude將里面的 2 個頭文件 stm32f4xx.h 和 system_stm32f4xx.h 復制到 USER 目錄之下。 這兩個頭文件是STM32F4 工程非常關鍵的兩個頭文件。
然后進入目錄 STM32F4xx_DSP_StdPeriph_Lib_V1.4.0ProjectSTM32F4xx_StdPeriph_Templates,
將 目 錄 下 面 的 5 個 文 件 main.c , stm32f4xx_conf.h , stm32f4xx_it.c , stm32f4xx_it.h ,system_stm32f4xx.c 復制到 USER 目錄下面。
最后USER文件如下圖所示:
八、完成以上步驟后,下面我們需要把這些文件加入我們的工程中去。右鍵點擊 Target1,選擇 Manage Project Items,如下圖:
九、建立三個Groups: USER,CORE,FWLIB。然后點擊 OK即可
十、接上一步,添加需要的文件選擇 FWLIB,然后點擊右邊的 AddFiles,定位到我們剛才建立的目錄GECLIBsrc 下面,將里面所有的文件選中(Ctrl+A),然后點擊 Add,然后 Close.可以看到 Files 列表下面包含我們添加的文件。
注意:
1、例若只用到GPIO的配置,可以只選擇stm32f4xx_gpio.c這樣可以減少工程的代碼量,提高編譯的速度。
2、有個文件stm32f4xx_fmc.c 比較特殊。這個文件STM32F42 和 STM32F43 系列才用到,所以我們這里要把它刪掉(注意是 stm32f4xx_fmc.c 要刪掉,不要刪掉stm32f4xx_fsmc.c)。
十一、用同樣的方法,我們CORE下面需要添加的文件為 startup_stm32f40_41xxx.s(注意:你需要選擇文件類型為All files才能看得到這個文件),USER 目錄下面需要添加的文件為 main.c, stm32f4xx_it.c,system_stm32f4xx.c。最后點擊 OK。
十二、進入設置界面設置頭文件存放路徑,如果沒有設置頭文件路徑,那么工程會出現報錯,頭文件路徑找不到
我們需要添加的頭文件路徑包括:CORE, USER以及GECLIBinc。若需要添加到自己建立的頭文件,也需要做路徑的添加
十三、STM32F40 系列的工程,還需要添加一個全局宏定義標識符。添加方法是點擊魔術棒之后,進入 C/C++選項卡,然后在 Define 輸入框連輸入:STM32F40_41xxx,USE_STDPERIPH_DRIVER。注意這里是兩個標識符 STM32F40_41xxx和 USE_STDPERIPH_DRIVER,他們之間是用英文的逗號隔開的,請大家注意。
十四、在做編譯工程之前我們首先要選擇編譯中間文件編譯后存放目錄。方法是點擊魔術棒,然后選擇“Output”選項下面的“Select folder forobjects…”,然后選擇目錄為我們上面的新建的 OBJ 目錄。然后再OBJ目錄下就可看到我們需要的程序.hex文件了。(上面第四步所說過)
十五、在編譯之前,我們先把 main.c 文件里面的內容清空,編寫自己的代碼與此同時,我們要將 USER 分組下面的 stm32f4xx_it.c 文件內容清空。 或者刪掉其中的 32 行對main.h 頭文件的引入以及 144 行 SysTick_Handler 函數內容
下面我們點擊編譯按鈕 編譯工程,沒有任何錯誤和警告,那工程文件就算完整的建立完成了。
十五、最后,打開工程文件會看到以下文件信息,這里不做一一介紹
注意:LIB里面的文件可根據自己需要進行增加或刪除
如果是控制簡單的GPIO輸入或者輸出,可以使用以上的這些文件就足夠了。
上一篇:STM32怎么創建工程:最簡單、方便的創建工程方法
下一篇:MDK5(keil5)環境安裝及破解(附MDK5安裝包、注冊機及F4支持包)
推薦閱讀
史海拾趣
在XXXX年,Cal-Chip Electronics公司迎來了一次技術創新的重大突破。公司研發團隊成功開發出了一款具有高效能、低功耗特點的新型芯片,這款芯片在行業內引起了廣泛關注。憑借這一技術創新,公司迅速擴大了市場份額,并與多家知名企業建立了長期合作關系。這一突破不僅提升了公司的技術水平,也為公司的長遠發展奠定了堅實基礎。
Enterpoint公司起源于一個由幾位電子工程領域的專家組成的創業團隊。當時,他們看到了電子行業中對于高效、可靠的數據處理解決方案的迫切需求,于是決定創立Enterpoint公司,專注于開發這一領域的創新產品。團隊初期面臨著資金短缺、技術挑戰和市場認知度低等多重困難,但他們憑借著對技術的熱情和堅持,不斷研發新產品,逐漸在電子行業中嶄露頭角。
在Enterpoint公司的發展過程中,他們始終將客戶服務放在首位。公司建立了一套完善的客戶服務體系,為客戶提供從產品咨詢、技術支持到售后服務的全方位支持。這種對客戶的關注和投入,不僅贏得了客戶的信任和好評,也為公司的品牌建設打下了堅實的基礎。
在2006年至2007年期間,A1 PROS的技術實力得到了業界的廣泛認可。韓國技術信用保證基金將A1 PROS評選為杰出技術公司,這是對A1 PROS在技術研發和創新方面所取得成就的肯定。同時,A1 PROS還被韓國工業銀行選定為家族企業,獲得了更多的資金支持和發展機會。
面對日益嚴重的環境問題,Automatic Connector公司積極響應綠色制造的號召。公司投入大量資金研發環保型電子連接器,采用環保材料和節能工藝,減少生產過程中的污染排放。同時,公司還倡導循環經濟的理念,推動廢棄電子產品的回收和再利用。這一舉措不僅提升了公司的社會形象,也為公司的可持續發展奠定了堅實的基礎。
[ip]快畢業了,畢業論文是 基于modbus協議的數據采集系統,不知道各位高手們有沒有想要對我這個笨笨知道的地方.謝謝,謝謝,十分感謝.… 查看全部問答∨ |
|
想做個東西,簡單來講就是通過外部設備給單片機一個開關信號,然后通過單片機告訴PC,再由PC根據信號進行程序處理,PC串口已經占用,所以用網口來實現。 單片機能否直接做協議轉換,還是還要通過一個專用芯片來做,請兄弟們幫忙提出一個解決方案。… 查看全部問答∨ |
|
問題1:高端中斷向量是什么意思?以IRQ中斷為例,中斷產生后先是跳到0x18處,然后再跳到中斷處理函數,這是不是就是所謂的低端中斷向量? 問題2:如果是高端中斷向量,是不是irq中斷發生后,并不是跳到0x18處,而是跳到自己指定的地址? 問題3: ...… 查看全部問答∨ |
|
各位大俠:小弟現需在WinCE5.0開發wifi driver,以前完全沒有相關經驗,完全沒有概念,模不著頭腦,問題真的很多。感覺微軟本身的文檔挺混亂的,說的也不怎么具體,大家有沒有好的教材?最好可以可以手把手教這個開發過程的啊(第一步做什么,第二 ...… 查看全部問答∨ |
收集到很多關于Altium Designer 資料,希望對大家有所幫助。 [ 本帖最后由 熊貓 于 2010-12-23 20:17 編輯 ]… 查看全部問答∨ |
這篇學習筆記,完全是基于《STM32不完全手冊》而言的,我沒有買Alientek的開發板,買的是ARMFly的,其實都差不多,只不過安福萊的板載資源非常豐富罷了,應用起來其實都差不都。 《STM32不完全手冊》的51到56頁就是要這次筆記學習的內容,請自己參 ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- 試用Vishay新型“IHLP磁芯損耗計算器”,搶樓贏好禮
- LPC4370重磅來襲 有獎問答贏好禮!
- 電子工程師,如何更好地擁抱GaN?參與問卷有好禮!
- 報名贏京東卡 | 國產FPGA安路科技2024線上新品發布會
- 兆易GD32450I-EVAL免費測評試用
- 追更有驚喜:解救被FSM折磨過的你,justd0解析LSM6DSOX有限狀態機官方例程
- 電路圖站2.0版上線,公開征集網友建議,填寫調查問卷贏積分!
- 全球首款Cortex-M23內核物聯網芯片SAML10和SAM L11系列 闖關獲取SAML10/SAML11法寶,拆除電子界安全危機,贏好禮!
- 邀請好友體驗WEBENCH,禮品豐厚你有他也有!