Ⅰ、寫在前面
本文使用目前(2016年11月)最新版本Keil(MDK-ARM)V5.21a開發(fā)環(huán)境、以STM32的處理器為例給大家講述新建一個(gè)軟件工程的詳細(xì)過程。
Keil(MDK-ARM)V4和V5新建軟件工程基本一樣,本文也適合與V4版本的新建軟件工程。
本文使用的處理器是ST公司的STM32F1系列芯片,ST公司其它系列(如:F4等)、其它公司(如:TI)新建軟件工程的過程也是一樣。
為方便廣大STM32學(xué)習(xí)者,我將在下面把STM32F0 - F4各個(gè)系列芯片新建好的Demo軟件工程、相關(guān)的工具和文檔提供給大家下載。
本文內(nèi)容已經(jīng)整理成PDF文件,提供給大家下載:
http://pan.baidu.com/s/1nuJ0RDR
Ⅱ、本文要點(diǎn)
從本文標(biāo)題可以看得出,重點(diǎn)是新建軟件工程的過程。但是作為ARM開發(fā)的軟件工程,一般都會(huì)包含部分源代碼(如:庫),意思就是說需要準(zhǔn)備一些工程所包含的源代碼文件。
本文基于STM32F1系列芯片為例來講述(其他系列芯片類似),將簡單描述一下準(zhǔn)備STM32F1標(biāo)準(zhǔn)外設(shè)庫、Demo源代碼(LED閃爍例程)。
準(zhǔn)備工作之后新建軟件工程才是本文是要點(diǎn),新建軟件工程的過程主要針對初學(xué)者,大部分工程的配置就選擇默認(rèn),如要查看更多關(guān)于軟件工程的詳細(xì)配置可以進(jìn)入博客或關(guān)注微信公眾號(hào)查看。
Ⅲ、準(zhǔn)備工作
俗話說“磨刀不誤砍柴工”,準(zhǔn)備工作雖然與題目關(guān)系不是很大,但也是本文的重點(diǎn),做好了準(zhǔn)備工作,后面新建軟件工程的工作就很容易實(shí)現(xiàn)了。
1.安裝Keil(MDK-ARM)軟件工具
本文必備工具,這里不多說,詳情請看我的另一篇文章【Keil(MDK-ARM)介紹、下載、安裝與注冊】:
博客:
http://blog.csdn.net/ybhuangfugui/article/details/51501781
PDF:http://pan.baidu.com/s/1nuJ0RDR
2.STM32標(biāo)準(zhǔn)外設(shè)庫下載
官網(wǎng)下載鏈接(需要ST賬號(hào)登陸):
http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software.html?querycriteria=productId=SC961
根據(jù)芯片型號(hào)下載對應(yīng)的標(biāo)準(zhǔn)外設(shè)庫(如芯片為STM32F103ZE,則下載對應(yīng)的STM32F10x_StdPeriph_Lib),如下圖:
也可以到我百度網(wǎng)盤下載(和官網(wǎng)一樣):
http://pan.baidu.com/s/1qYbBKMK
3.整理工程文件夾
這一小節(jié)的內(nèi)容可根據(jù)自己習(xí)慣來整理,我整理的文件及文件夾結(jié)構(gòu)是按照常規(guī)的整理方式。你如果覺得合理,可以引用;如果覺得不習(xí)慣這個(gè)結(jié)構(gòu)方式,可以自己整理。
首先建立一個(gè)存放工程文件的文件夾:STM32F103ZE(Keil)_Demo
A.提取ST標(biāo)準(zhǔn)外設(shè)庫文件
ST官網(wǎng)下載的標(biāo)準(zhǔn)外設(shè)庫里面有很多源代碼文件,但我們只需要使用部分文件。因此,需要提取使用的文件及文件夾到我們的工程中。
解壓“STM32F10x_StdPeriph_Lib”,可以看到在主目錄下面有四個(gè)文件夾:
_htmresc:圖片文件夾(不提?。?/p>
Libraries:庫文件夾(提取大部分)
Project: 示例工程(提取少部分)
Utilities: 公共代碼、評估板代碼(不提取)
我們使用標(biāo)準(zhǔn)外設(shè)庫主要提取的文件是Libraries下面的文件,但有些文件及文件夾也是多余的。因此,我將多余的文件及文件夾去掉,保留需要的文件和文件夾。
B.新建文件和文件夾
除了標(biāo)準(zhǔn)外設(shè)庫文件之外,我們需要建立存放自己代碼的文件和文件夾。我這里主要需要新建三個(gè)文件夾:
App: 應(yīng)用部分代碼
Bsp: 底層部分代碼
Doc: 說明文檔
在自己新建的文件夾下面還需要新建自己的文件,文件里面添加源代碼,我們提供的Demo工程,實(shí)現(xiàn)的功能比較簡單,就是一個(gè)LED閃爍。這里不描述,具體可以在最后下載查看。
上面兩個(gè)步驟完成之后,我們就可以看到在“STM32F103ZE(Keil)_Demo”下面整理的文件夾:
至此,準(zhǔn)備工作算完成了,上面提取的文件、新建的文件里面具體的內(nèi)容請下載Demo工程查看。
Ⅳ、新建軟件工程
新建一個(gè)簡單、基礎(chǔ)的軟件工程大概需要有三個(gè)步驟:建立工程、添加文件和配置工程。
上面的準(zhǔn)備工作做好之后,就可新建自己的軟件工程了,下面將一步一步講述從零開始新建一個(gè)軟件工程的詳細(xì)過程。
1.建立工程
建立工程的步驟是基礎(chǔ),也比較簡單。
A.打開軟件,新建立工程(Project -> New uVision Project)
B.選擇路徑,保存名稱
C.選擇芯片型號(hào)
D.基礎(chǔ)工程
一個(gè)基礎(chǔ)的工程就完成了,但需要使用還不夠,還需要下面的步驟。
2.添加文件
準(zhǔn)確的來說,應(yīng)該是添加組(文件夾)和添加文件。直接的說,就是將你自己的源代碼(前面提取的庫、新建的文件等)添加到工程中。
這里的工程項(xiàng)目管理可根據(jù)自己的想法來定義(類似于自己分類、命名文件夾和文件),我這里按照常規(guī)的方式進(jìn)行管理項(xiàng)目。
·
·
一步一步添加,直到最后完成
·
·
3.配置工程
配置工程對于初學(xué)者來說,大部分內(nèi)容只需要默認(rèn)即可,這里只講述幾個(gè)常見的配置,能滿足基本的功能。更多配置可進(jìn)入我微信公眾號(hào)或博客查看。
A.點(diǎn)擊“工程目標(biāo)選項(xiàng)”進(jìn)入配置(或Project -> Options for Target)
B.輸出Hex文件
很多朋友初學(xué)的朋友都會(huì)問怎么輸出Hex(可直接下載的文件),只需要勾選上【Project -> Options for Target -> Output】“Create HEX File”即可。
C.C/C++配置
這個(gè)選項(xiàng)的配置參數(shù)比較多,對于大型項(xiàng)目來說比較重要,但對于初學(xué)者來說,只需要簡單配置兩項(xiàng)就行。
第一處配置---預(yù)定義:
【這里只針對于STM32F103大容量芯片,其他芯片視情況而定】
預(yù)定義STM32F10X_HD,有些工程還預(yù)定義USE_STDPERIPH_DRIVER。由于都是使用“標(biāo)準(zhǔn)外設(shè)庫”,我個(gè)人習(xí)慣把USE_STDPERIPH_DRIVER,定義在stm32f10x.h文件里面,所以在這里就看不到我定義的這一項(xiàng)了。
第二處配置---包含路徑:
由于我們前面工程中有很多文件夾,因此需要添加對應(yīng)的路徑,這樣編譯器才能找得到。
·
·
一步一步添加,直到最后完成
·
·
D.選擇下載調(diào)試工具
這個(gè)選項(xiàng)根據(jù)自己的下載調(diào)試器來選擇(比如:ST-Link)
E.下載復(fù)位并運(yùn)行設(shè)置
有些初學(xué)的朋友說“為什么我下載程序之后,需要按一下復(fù)位鍵才能運(yùn)行?”,只需要在工程中勾選上“Reset and Run”就可實(shí)現(xiàn),下載完程序馬上運(yùn)行了。
至此,一個(gè)新建立的工程就算完成了(當(dāng)然,我新建的文件是添加了正確的源代碼),只需要編譯,接上下載器就可以下載運(yùn)行了。
Ⅴ、下載
為方便廣大STM32學(xué)習(xí)者,我將常見的STM32“Demo軟件工程”已經(jīng)建好,,里面包含IAR for ARM新建的工程供大家下載?!救绻麤]有你對應(yīng)的芯片型號(hào),你又想得到,可以給我留言“STM32FXXXxxDemo 工程”。我會(huì)做一個(gè)統(tǒng)計(jì),如果某一型號(hào)芯片Demo工程有多人需要,我會(huì)考慮給你們寫的?!?/p>
STM32F0工程模板:
http://pan.baidu.com/s/1pKSkSxt
STM32F1工程模板:
http://pan.baidu.com/s/1c1AWupM
STM32F2工程模板:
http://pan.baidu.com/s/1o8yGWg6
STM32F3工程模板:
http://pan.baidu.com/s/1boVXh2f
STM32F4工程模板:
http://pan.baidu.com/s/1qYzYMuS
注意:由于許多網(wǎng)盤近年來受到影響都相繼停止服務(wù)或關(guān)閉了,如果網(wǎng)盤鏈接失效,請到官網(wǎng)下載,也可以關(guān)注微信公眾號(hào)查看更新鏈接,或微信聯(lián)系作者。
Ⅵ、說明
上面新建軟件工程主要是針對初學(xué)者,寫的比較基礎(chǔ)的。若要了解更多關(guān)于Keil的使用教程,可以進(jìn)入我微信公眾號(hào)或博客查看。
以上內(nèi)容僅供參考,若有不對之處,敬請諒解。
-
ARM
+關(guān)注
關(guān)注
134文章
9342瀏覽量
376411 -
keil
+關(guān)注
關(guān)注
69文章
1223瀏覽量
169396 -
MDK
+關(guān)注
關(guān)注
4文章
211瀏覽量
32619
發(fā)布評論請先 登錄
從Keil MDK到IAR EWARM:通過工程遷移實(shí)現(xiàn)項(xiàng)目資產(chǎn)的更好管理

如何成為一名嵌入式軟件工程師?
Keil uVision 5安裝包下載,詳細(xì)安裝教程~
【RA-Eco-RA4E2-64PIN-V1.0開發(fā)板試用】+KEIL+RASC 開發(fā)環(huán)境搭建
【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】新建工程(MDK)
【RA-Eco-RA4E2-64PIN-V1.0開發(fā)板試用】MDK新建工程
Keil詳細(xì)安裝教程(同時(shí)兼容51與STM32)

評論