從零入手Kinetis系統(tǒng)開(kāi)發(fā)(三)建立自己風(fēng)格的IAR編程結(jié)構(gòu)_第1頁(yè)
從零入手Kinetis系統(tǒng)開(kāi)發(fā)(三)建立自己風(fēng)格的IAR編程結(jié)構(gòu)_第2頁(yè)
從零入手Kinetis系統(tǒng)開(kāi)發(fā)(三)建立自己風(fēng)格的IAR編程結(jié)構(gòu)_第3頁(yè)
從零入手Kinetis系統(tǒng)開(kāi)發(fā)(三)建立自己風(fēng)格的IAR編程結(jié)構(gòu)_第4頁(yè)
從零入手Kinetis系統(tǒng)開(kāi)發(fā)(三)建立自己風(fēng)格的IAR編程結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、賽【原創(chuàng)】從零入手Kinetis系統(tǒng)開(kāi)發(fā)(三之建立自己風(fēng)格的IAR編程結(jié)構(gòu)2011-12-1122:51發(fā)表系統(tǒng)分類(lèi):嵌入式系統(tǒng)自定義分類(lèi):Kinetis標(biāo)簽:Kinetis K60IAR本來(lái)按計(jì)劃在這篇博客第三系列,我是想跟大家一塊兒分析和整理下K60的啟動(dòng)代碼部分的??墒呛髞?lái)想來(lái)想去,覺(jué)著既然上一篇寫(xiě)了飛思卡爾的官方例程的編程結(jié)構(gòu),那么這次就一鼓作氣索性先把自己的工程風(fēng)格建立起來(lái),而且這樣建立好了工程之后再分析其啟動(dòng)代碼也不顯得突兀,容易接受和理解,呵呵(咳咳,有點(diǎn)當(dāng)老師的趕腳了。所以這篇如果具體來(lái)說(shuō),應(yīng)該叫做“從零建立屬于自己風(fēng)格的基于IAR的K60工程”。既然說(shuō)是自己風(fēng)格,可能就有些偏

2、主觀色彩了,呵呵,希望高手大俠們不要拍磚,主要是拿出來(lái)希望可以給入門(mén)級(jí)的同志們一點(diǎn)借鑒和經(jīng)驗(yàn),當(dāng)然也希望跟高手們交流下,有錯(cuò)誤的地方期待得到你們的批評(píng)指正(這點(diǎn)很重要的。由于這篇內(nèi)容可能會(huì)有點(diǎn)多甚至有點(diǎn)亂,所以下面就不再?gòu)U話了,直接上圖了哈(都快口頭禪了,暈 呵呵,上圖就是我自己的一種風(fēng)格,其中Library文件組為自己做的庫(kù),包括了CPU文件組(K60的內(nèi)核部分,Drivers文件組(K60功能模塊驅(qū)動(dòng),Headers文件組(部分系統(tǒng)頭文件和StartUp文件組(K60的啟動(dòng)代碼文件;Link文件組為K60的配置模式文件組,icf文件可以到網(wǎng)上搜一搜它的作用,Project文件組為一個(gè)新項(xiàng)目

3、工程的文件組,在該文件組新建功能C文件,Output文件組為鏈接輸出文件組,out文件用于下載調(diào)試。每個(gè)人可能都有一種編程風(fēng)格,只不過(guò)如果可以給大家一點(diǎn)啟發(fā)或者借鑒則足已。整體的工程架構(gòu)我已經(jīng)曬出來(lái)了(呵呵,我也潮一把,用一用“曬”這個(gè)字,也就是本篇的任務(wù)和最終的目標(biāo),下面將分幾個(gè)步驟層層剝解,如果把它看成牛,那希望我們能像庖丁一樣游刃有余,開(kāi)始吧:(可能有的步驟較粗略,沒(méi)辦法,篇幅所限,注重領(lǐng)會(huì)精神,呵呵(1目前大多數(shù)開(kāi)發(fā)環(huán)境都是基于項(xiàng)目工程(project來(lái)管理的,但是每個(gè)project又必須建立在工作區(qū)內(nèi),且一個(gè)工作區(qū)允許多個(gè)項(xiàng)目的建立,如果第一次建立一個(gè)project則必須要先建立工作

4、區(qū)。好了,概念介紹完了,圖來(lái)了(前提軟件已經(jīng)打開(kāi)了,呵呵: 圖1.1新建工作區(qū) 圖1.2新建工程 圖1.3新建空工程 圖1.4已經(jīng)建立好的空工程(2建立相應(yīng)的工作組,如前面整體風(fēng)格所示,主要建立Library文件組(自己做的庫(kù),Link文件組(該工程的配置文件組,Project文件組(項(xiàng)目文件組和out文件組(輸出文件組。 圖2.1在工作區(qū)右鍵選擇添加工作組 圖2.2建立好的文件組架構(gòu)(空的(3給文件組添加相應(yīng)的C文件,這部分涉及到移植官方例程的文件到該工程。 圖3.1所建工程的根目錄結(jié)構(gòu),就是把所需的c和h文件拷貝到上圖和下圖所示相應(yīng)的文件夾下 圖3.2config files下文件結(jié)構(gòu),為

5、icf文件,配置K60調(diào)試方式內(nèi)存分配等 圖3.3Library下文件結(jié)構(gòu) 圖3.4啟動(dòng)代碼文件目錄(下篇會(huì)仔細(xì)分析 圖3.5K60內(nèi)核部分文件目錄 圖3.6drivers下的文件目錄,目前只添加了這幾個(gè)功能模塊的文件,C文件和相應(yīng)的頭文件在相應(yīng)文件夾里面,這里面篇幅所限,不再細(xì)貼圖了,呵呵 圖3.7系統(tǒng)所需頭文件的目錄文件,看看,基本上所需的重要的頭文件都放在該文件夾里除了具體功能的頭文件,像arm_cm4.h,vectors.h等等 圖3.8該目錄下放置實(shí)際工程文件,這里只新建了test.c文件,以后隨著工程的深入,會(huì)不斷放置新的文件 圖3.9具體添加相應(yīng)文件到相應(yīng)的文件組的操作,注意了,

6、文件組只是起到了組織文件的作用,跟剛看到的同樣文件名的文件夾不是一個(gè)概念,也就是說(shuō),這文件組名可以不與相應(yīng)的文件夾同名,但是可以把相應(yīng)文件夾下的c文件添加到相應(yīng)的文件組下,ok?呵呵(4相應(yīng)的文件添加完畢后,下面就涉及到工程的設(shè)置問(wèn)題了,這部分是重中之重,注意了。 圖4.1右鍵工程名,選擇Options,進(jìn)入工程設(shè)置選項(xiàng)卡,也可以菜單選項(xiàng)Project->Options進(jìn)入 在General Options里選好內(nèi)核,其他部分默認(rèn)即可,然后進(jìn)入C/C+Complier選項(xiàng)卡 這個(gè)很重要,如果要自己建立或者移植官方的例程到自己的工程文件夾下,這個(gè)頭文件包含目錄一定要添加,其中$PROJ_D

7、IR$表示路徑在當(dāng)前工程文件夾中也就是工程文件.ewp文件所在的目錄,“.”表示返回上一級(jí)文件夾,“文件夾名”表示進(jìn)入這個(gè)文件夾。這是一種相對(duì)路徑的用法,方便以后移植,這個(gè)灰常重要,這個(gè)細(xì)說(shuō)要很多東西,所以建議到網(wǎng)上搜一搜該用法。 這個(gè)是Output converter選項(xiàng)卡,選中輸出motorola文件,這個(gè)是可選的,其實(shí)也可不選 這個(gè)是下載調(diào)試選項(xiàng),這里需要注意一下,呵呵,如果用飛思卡爾官方的tower系統(tǒng),這里驅(qū)動(dòng)器需選擇PE micro以便使用板上自帶的OSJTAG,不過(guò)我因?yàn)橛玫氖荍-Link,所以??瓤?是吧,懂的,呵呵,然后Run to可以不點(diǎn),這樣的話調(diào)試初始運(yùn)行會(huì)首先進(jìn)入到啟

8、動(dòng)代碼,便于我們分步調(diào)試,這個(gè)以后會(huì)詳細(xì)介紹。 由于我上個(gè)步驟選擇了J-Link調(diào)試工具,所以這步進(jìn)入該選項(xiàng)卡設(shè)置,其實(shí)默認(rèn)即可,呵呵。(5設(shè)置配置模式 可以看到系統(tǒng)默認(rèn)的兩種配置模式,這里不需要它們了,逐個(gè)點(diǎn)Remove,然后分別新建Flash_512K和RAM_128K,然后確認(rèn),然后就可以看到配置模式里多出了兩個(gè)選項(xiàng)即Flash_512K和RAM_128K,這里我選擇RAM128K當(dāng)然僅僅這樣不算完,我們還需要給其配置相應(yīng)的 icf 文件,這下想到上面提到的那個(gè) config files 文件夾了 吧也即是上圖所示 Link 文件組里的文件,呵呵,所以接下來(lái)我們選中工程然后右鍵進(jìn)入 Options 選項(xiàng)卡的 Linker 選項(xiàng) 在這里選中 Override default,然后選擇好 icf 所在的文件路徑,其他選項(xiàng)卡默認(rèn)即可,接下來(lái)同樣設(shè)置好 Fla

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論