|
keil詳細(xì)教程分享,還是官方版的哦
Keil公司開發(fā)的ARM開發(fā)工具M(jìn)DK(Microcontroller Development Kit),是用來開發(fā)基于ARM核的系列微控制器的嵌入式應(yīng)用程序。它適合不同層次的開發(fā)者使用,包括專業(yè)的應(yīng)用程序開發(fā)工程師和嵌入式軟件開發(fā)的入門者。MDK包含了工業(yè)標(biāo)準(zhǔn)的Keil C編譯器、宏匯編器、調(diào)試器、實(shí)時(shí)內(nèi)核等組件,支持所有基于ARM的設(shè)備,能幫助工程師按照計(jì)劃完成項(xiàng)目。
Keil ARM開發(fā)工具集集成了很多有用的工具,如下圖所示,正確的使用它們,可以有助于快速完成項(xiàng)目開發(fā)。
0.png (45.21 KB, 下載次數(shù): 118)
下載附件
2018-9-27 01:11 上傳
注意
µVision IDE集成開發(fā)環(huán)境和µVision Debugger調(diào)試器可以創(chuàng)建和測試應(yīng)用程序,可以用GNU ARM ADS或者RealView的編譯器來編譯這些
應(yīng)用程序;
MDK-ARM是PK-ARM的一個(gè)超集;
AARM匯編器、CARM C編譯器、LARM連接器和OHARM目標(biāo)文件到十六進(jìn)制的轉(zhuǎn)換器僅包含在MDK-ARM開發(fā)工具集中。 除了上表所列工具外,Keil 還提供以下工具:
0.png (106.58 KB, 下載次數(shù): 130)
下載附件
2018-9-27 01:12 上傳
0.png (132.55 KB, 下載次數(shù): 125)
下載附件
2018-9-27 01:12 上傳
0.png (52.69 KB, 下載次數(shù): 103)
下載附件
2018-9-27 01:12 上傳
啟動(dòng)代碼(startup code)
啟動(dòng)代碼用于初始化CPU以與硬件設(shè)計(jì)的配置相匹配,參閱開始使用ARM開發(fā)工具集用戶指南, CPU啟動(dòng)代碼 可以獲取有關(guān)啟動(dòng)代碼完成任務(wù)的詳細(xì)信息。
不同系列的設(shè)備有不同的啟動(dòng)代碼。文件夾\ARM\Startup 包含了基于 RealView編譯工具的一些啟動(dòng)代碼,它被配置成適用于不同的硬件平臺(tái)。當(dāng)創(chuàng)建一個(gè)新的工程時(shí),啟動(dòng)代碼被自動(dòng)地拷貝到用于配置文件的工程文件夾下。
大多數(shù)啟動(dòng)文件為設(shè)備配置提供了符號(hào)定義,可以在 µVision的Project - Options - Asm - Define下鍵入這些符號(hào)。 下面是常用的選項(xiàng):
„ REMAP: 在某些設(shè)備上執(zhí)行存儲(chǔ)映射。
„ EXTMEM_MODE: 配置為從片外Flash ROM執(zhí)行代碼。
„ RAM_MODE: 配置為從RAM執(zhí)行代碼。
„ RAM_INTVEC: 執(zhí)行重映射并拷貝中斷向量。
有關(guān)變量SET符號(hào)的詳細(xì)說明及相關(guān)配置選項(xiàng)在啟動(dòng)代碼文件中提供。
對(duì)由µVision自動(dòng)生成的鏈接器配置來說,要求啟動(dòng)代碼本身位于Reset段內(nèi),且中斷向量表位于標(biāo)號(hào)Reset_Handler (代表CPU重啟地址)處。
0.png (144.33 KB, 下載次數(shù): 120)
下載附件
2018-9-27 01:13 上傳
使能存儲(chǔ)器為Read/Only 和Read/Write,它作為應(yīng)用中的默認(rèn)存儲(chǔ)域。只要不用Options - Properties對(duì)話框把源文件或組分配到指定的存儲(chǔ)域,默認(rèn)存儲(chǔ)域?qū)⒂糜诖鎯?chǔ)應(yīng)用程序。
用于選擇存儲(chǔ)啟動(dòng)代碼的存儲(chǔ)域。這將意味著此存儲(chǔ)空間存儲(chǔ)了重啟(reset)和中斷向量表,鏈接器會(huì)在啟動(dòng)階段(在進(jìn)入主程序以前)把所有啟動(dòng)代碼分配到此存儲(chǔ)域內(nèi)。
NoInit 復(fù)選框用于對(duì)某存儲(chǔ)域禁止0初始化。需要注意的是在C源程序中仍然需要0(zero_init) 初始化。相關(guān)解釋見禁止零初始化 。
注意:
默認(rèn)的read/only存儲(chǔ)域用于存儲(chǔ)程序的初始化數(shù)據(jù)及分配到RAM中的程序代碼和常量。 RealView微控制器開發(fā)集的評(píng)估板不支持分散加載描述文件。
有關(guān)分散加載描述文件請(qǐng)參閱RV Linker and Utilities User's Guide, Using Scatter-loading
0.png (71.85 KB, 下載次數(shù): 137)
下載附件
2018-9-27 01:16 上傳
注意:
當(dāng)RAM 被用作Code / Const 時(shí),__main 初始化會(huì)將程序代碼和常量拷貝到此RAM區(qū)并執(zhí)行。映像文件存儲(chǔ)在Project - Options for Target - Target對(duì)話框中指定的默認(rèn)存儲(chǔ)域內(nèi)。
這樣的設(shè)置用于為鏈接器產(chǎn)生分散加載文件。如果禁止Project - Options for Target - Linker,此設(shè)置會(huì)被忽略。
此特性在RealView微控制器開發(fā)工具集的評(píng)估版下不可用。
不同的ARM微控制器有不同的中斷優(yōu)先級(jí)和中斷系統(tǒng)。參考開始使用ARM開發(fā)工具集用戶指南, 中斷,可了解各種中斷相關(guān)概念。
RealView編譯器提供關(guān)鍵字__irq 以定義標(biāo)準(zhǔn)的(irq)和(fiq)中斷函數(shù)。
感謝您選擇了Keil公司的微控制器軟件開發(fā)工具。使用這個(gè)工具可以創(chuàng)建ARM、XC16x、C16x、ST10、251及8051等微控制器的
嵌入式應(yīng)用程序,詳細(xì)的設(shè)備信息請(qǐng)參考設(shè)備數(shù)據(jù)庫。
Keil公司將不斷地添加新的設(shè)備和片上外設(shè)的的仿真支持,因此,如果本地設(shè)備數(shù)據(jù)庫不包含用戶打算使用的設(shè)備,請(qǐng)檢查一下網(wǎng)絡(luò)設(shè)備數(shù)據(jù)庫。
這個(gè)用戶手冊(cè)提供了Keil ARM開發(fā)工具的概述。包括如下的章節(jié):
簡介 給出來了開發(fā)工具的概述、討論了文件結(jié)構(gòu)。
開發(fā)工具 描述了包括µVision IDE/調(diào)試器的Keil ARM開發(fā)工具的主要特性。解釋了如何選擇Keil CARM 編譯器、GNU或ADS/RealView工具鏈。
創(chuàng)建應(yīng)用程序 描述了如何創(chuàng)建工程、編輯源文件、編譯和修改語法錯(cuò)誤以及產(chǎn)生可執(zhí)行代碼。
測試程序 描述了如何使用µVision調(diào)試器仿真和測試完整的應(yīng)用程序。
例程 提供了幾個(gè)例子程序顯示如何使用Keil µVision/ARM及相關(guān)開發(fā)工具。
使用片上外設(shè) 顯示了如何使用開發(fā)工具訪問片上外設(shè)。
CPU設(shè)置 提供了CPU啟動(dòng)代碼和工具配置的詳細(xì)信息。
JTAG調(diào)試討論了如何如何使用Keil ULINK USB-JTAG仿真器調(diào)試目標(biāo)系統(tǒng)。
Flash編程 描述了如何通過JTAG接口設(shè)置Keil ULINK仿真器進(jìn)行Flash編程。
RDI接口驅(qū)動(dòng) 解釋了RDI調(diào)試解決方案的使用。
介紹
使用Keil軟件開發(fā)工具可以創(chuàng)建基于ARM, XC16x, C16x, ST10, 251以及8051等微控制器(詳細(xì)的微控制器列表請(qǐng)參考設(shè)備數(shù)據(jù)庫)的嵌入式應(yīng)用程序。
Keil公司將不斷地向設(shè)備數(shù)據(jù)庫中添加新設(shè)備以及片上外設(shè)的仿真支持,因此,如果在本地安裝的µVision設(shè)備數(shù)據(jù)庫中沒有合適的設(shè)備請(qǐng)參考一下基于網(wǎng)站的設(shè)備數(shù)據(jù)庫。
這一章將介紹Keil 軟件的可用ARM開發(fā)工具,簡單的介紹一下軟件開發(fā)周期以及ARM開發(fā)工具鏈的 文件結(jié)構(gòu) 。
軟件開發(fā)周期
使用µVision 3作為嵌入式開發(fā)工具,其開發(fā)的流程與其他軟件開發(fā)工具基本一樣,一般分為以下幾步:
1) 新建一個(gè)工程,從設(shè)備庫中選擇目標(biāo)芯片,配置工程編譯器環(huán)境;
2) 用C或匯編編寫源文件;
3) 編譯目標(biāo)應(yīng)用程序;
4) 修改源程序中的錯(cuò)誤;
5) 測試鏈接應(yīng)用程序。
下圖描述了完整的µVision /ARM軟件開發(fā)流程。本節(jié)后面將對(duì)其中的每一部分做簡要描述。
0.png (88.6 KB, 下載次數(shù): 120)
下載附件
2018-9-27 01:18 上傳
µVision IDE集成了工程管理、帶交互式錯(cuò)誤修正的編輯器、選項(xiàng)設(shè)置、編譯工具以及在線幫助。使用µVision可以創(chuàng)建源文件以及將這些源文件組織成定義目標(biāo)應(yīng)用程序的工程。用戶可將注意力全部集中在µVision集成開發(fā)環(huán)境,因?yàn)樗峁┝饲度胧綉?yīng)用程序的自動(dòng)編譯、匯編以及鏈接。
C編譯器和宏匯編器
在µVision IDE中創(chuàng)建源文件,這些源文件將使用C編譯器編譯或宏匯編器匯編。編譯器和匯編器處理源文件,產(chǎn)生可重載的目標(biāo)文件。
在Keil µVision/ARM中可以使用GNU 或ARM ADS/RealView 的開發(fā)工具。µVision/ARM包含了許多使用這些工具鏈的例程及詳細(xì)信息。
庫管理器
庫管理器可以從編譯器或匯編器產(chǎn)生的目標(biāo)文件中創(chuàng)建目標(biāo)庫文件。庫是具有特定格式和順序的目標(biāo)模塊的集合,它在鏈接器中使用。當(dāng)鏈接器處理庫文件時(shí),只有那些在程序中使用到的庫文件目標(biāo)模塊才會(huì)被處理。
鏈接器/裝載器
鏈接器/裝載器使用目標(biāo)模塊創(chuàng)建絕對(duì)的ELF/DWARF格式文件,這些目標(biāo)模塊來源于庫文件或編譯器和匯編器產(chǎn)生的目標(biāo)文件。絕對(duì)的目標(biāo)文件或模塊不包含可重載的代碼或數(shù)據(jù)。所有的代碼和數(shù)據(jù)都存儲(chǔ)在固定的內(nèi)存位置。絕對(duì)的ELF/DWARF文件可以在下述情況下使用:
編程Flash ROM或其他存儲(chǔ)設(shè)備。
仿真和目標(biāo)調(diào)試的µVision調(diào)試器。
程序測試的片內(nèi)仿真器。
µVision調(diào)試器
µVision的源碼級(jí)調(diào)試器非常適合快速可靠的調(diào)試。這個(gè)調(diào)試器包括一個(gè)高速的軟件仿真器,它可以仿真一個(gè)包括片上外設(shè)和外部
硬件的完整ARM系統(tǒng)。當(dāng)用戶從設(shè)備數(shù)據(jù)庫中選擇所需芯片時(shí),它的屬性將自動(dòng)被配置。
µVision的調(diào)試器為目標(biāo)硬件上程序的測試提供了幾種方法:
使用帶USB-JTAG接口的Keil ULINK2仿真器進(jìn)行應(yīng)用程序的Flash下載和軟件測試,它們是通過集成在ARM設(shè)備中的嵌入式ICE宏單元實(shí)現(xiàn)的。
使用高級(jí)的GDI 接口連接µVision調(diào)試器和目標(biāo)系統(tǒng)。
完整的pdf格式文檔51黑下載地址(共1472頁):
keil教程.pdf
(11.22 MB, 下載次數(shù): 427)
2018-9-26 21:00 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|