




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
-.z第3章J*44B0ARM嵌入式教學實驗系統(tǒng)3.1J*44B0ARM嵌入式教學實驗系統(tǒng)介紹J*44B0教學實驗系統(tǒng)是一套硬件、軟件集成的,基于ARM的完整的教學實驗系統(tǒng),系統(tǒng)包含豐富的硬件資源、完善而優(yōu)越的調試手段和詳盡的教學實驗教程。J*44B0目標處理器采用三星的S3C44B0*處理器,開發(fā)平臺采用**創(chuàng)維特信息技術**的ADT集成開發(fā)環(huán)境〔以下簡稱ADTIDE〕,嵌入式開發(fā)的所有過程都可以在該環(huán)境下完成。1.使用方便:ADTIDE采用了一個通用的界面,可以非常方便的進展工程管理、編輯、編譯、和調試,使得我們可以很快地進入到具體的實驗中;2.接口豐富:含多種外設接口:LED輸出、7段碼輸出、LCD輸出、觸摸屏、4×4鍵盤輸入、外部中斷輸入、串行接口、A/D轉換接口、步進電機接口、網絡接口、USB接口、標準計算機打印口〔并口〕、I2C3.擴大性好:采用模塊化設計,便于硬件升級換代,并提供豐富的擴展槽以便擴大外部接口;4.實驗豐富:本系統(tǒng)專門為嵌入式系統(tǒng)教學進展了定制,精心設計了多個實驗,包括嵌入式軟件開發(fā)根底實驗、根本接口實驗、Bootloader及操作系統(tǒng)實驗和高級接口實驗,內容由淺入深,涵蓋面廣,適合不同學習層次人員的學習和教學,并可以方便地進展實驗擴展。3.2J*44B0教學實驗系統(tǒng)組成1.ADTIDE集成開發(fā)環(huán)境;2.ADTEmulatorforARMJTAG仿真器;3.J*44B0系列教學實驗箱:J*44B0-1B、J*44B0-1、J*44B0-2、J*44B0-3;4.各種連接線、電源適配器以及實驗指導書等;5.教學實驗系統(tǒng)配套光盤。J*44B0ARM教學實驗系統(tǒng)根本實驗模型如圖3-1所示。圖3-1實驗模型示意圖3.2.1A1.ADTIDE簡介ADTIDE是一套應用于嵌入式軟件開發(fā)的新一代集成開發(fā)環(huán)境,它提供高效、清晰、可視化的嵌入式軟件開發(fā)平臺,包括一整套完備的面向嵌入式系統(tǒng)的開發(fā)和調試工具:編輯器、編譯器、器、工程管理器以及調試器等。ADTIDE運行于WindowsNT、98、2000及*P,采用類VisualStdio界面風格,其界面如圖3-2所示。圖3-2ADTIDE集成開發(fā)環(huán)境軟件界面圖2.ADTIDE主要特性◆中文、英文版本支持◆操作系統(tǒng)支持*支持V*works,uCLinu*,Linu*,Nucleus等操作系統(tǒng)的開發(fā)和調試?!艨梢暬脑创a編輯和工程管理功能:*界面友好,使用方便:類似MSVisualStudio的用戶界面,支持打印功能,支持文件內查找功能和FindinFiles功能。*工程管理器:ADTIDE提供圖形化的工程管理工具,以project為單位為用戶提供應用源程序的文件組織和管理,管理用戶的應用程序,編譯選項以及調試參數(shù)等。*源碼編輯器:支持標準的文本編輯功能,支持C語言、匯編語言語法高亮顯示。*輔助編輯工具:提供多剪貼板工具、代碼模板工具、頭文件和源文件切換工具、注釋工具、符號配對書寫工具等多種輔助編輯工具?!舸┎寰幾g功能:*支持開發(fā)語言:ANSIC、EmbeddedC++、匯編語言。*編譯工具:使用著名優(yōu)秀自由軟件GNU的GCC穿插編譯工具,并經過優(yōu)化和嚴格測試,支持C語言、匯編語言等。*編譯參數(shù)設置:完全圖形界面方式的編譯參數(shù)設置,提供可視化的設置功能。支持工程級/文件目錄級/文件級編譯參數(shù)設置?!魪姶蟮脑创a級調試功能:*圖形和命令行兩種調試方式。*斷點功能。支持軟件斷點和硬件斷點,實現(xiàn)斷點設置、斷點屏蔽、斷點取消、斷點列表。*程序的單步執(zhí)行。*變量監(jiān)視功能。隨程序運行同步更新變量,即時修改變量值,可設置自動刷新方式、十進制/十六進制顯示。*ARM各種模式的存放器即時查看與修改。當前模式顯示,存放器值修改時紅色突顯。*存儲器查看與修改??稍O置自動刷新方式、字節(jié)/雙字節(jié)/四字節(jié)顯示、大/小端方式顯示,存儲器值修改時紅色突顯。*函數(shù)堆棧顯示??稍O置自動刷新方式、十進制/十六進制顯示、參數(shù)值顯示,參數(shù)類型顯示。*支持源程序、反匯編程序和混合窗口顯示,支持ARM/THUMB方式顯示。*具有與MSVisualStudio類似的調試菜單功能:Go、Stop、Reset、Stepinto、Stepover、Stepout、RuntoCursor等。*支持程序下載。*板上存放器(OnBoardRegister)的查看和修改。可以查看支持CPU的所有板上存放器的具體意義、當前值、各個位的意義;可設置自動刷新方式、二進制/十進制/十六進制顯示、大/小端方式顯示,支持十進制/十六進制方式修改存放器值,存放器值修改時紅色突顯。*存儲區(qū)下載和上載功能。*工程級調試參數(shù)的保存。*提供Simulator模擬器,支持脫機模擬調試。*集成elftobin及反匯編常用工具。*豐富的例程程序?!鬎LASHMemory在線編程。*支持對多種FLASH芯片的實時檢查、擦除、編程、校驗等操作。*支持8/*高速編程,編程速度約為80Kbytes/S.*提供統(tǒng)一的Flash編程接口,用戶可靈活地添加配置Flash編程方案。3.2.2A1.支持ADTIDEForARM集成開發(fā)環(huán)境;完全兼容ADS集成開發(fā)環(huán)境;2.支持GDB調試(Linu*/windows/uC-OS等操作系統(tǒng)下);3.支持ARM系列CPU內核:ARM7、ARM7DI、ARM7TDMI、ARM7TDMI-S、ARM710T、ARM720T、ARM726FZ、ARM9、ARM9TDMI、ARM940T、ARM920T、ARM922T、ARM9E-S、ARM966E-S、Intel*scale、Securcore……4.支持Windows98/NT/2000/*P;5.支持外接電源供電,2.5V/3V/5V兼容電平接口;6.支持標準的14/20針JTAG接口;7.支持匯編級調試,支持ARM、THUMB及指令集穿插調試;8.下載速度大于120Kbytes/S;9.支持標準C語言程序調試;10.非插入式調試,不占用板上任何資源;11.支持Flash在線編程;圖3-3ADTEmulatorforARMJTAG仿真器12.采用標準并口技術,無須選擇ECP、EPP;圖3-3ADTEmulatorforARMJTAG仿真器13.LED指示運行狀態(tài);14.通過軟件升級方式支持更高版本的ARM核處理器。15.支持硬件斷點與不限個數(shù)的軟件斷點。3.2.3J*44B0系列教學實驗箱是實驗系統(tǒng)的主要硬件平臺,它包含一系列嵌入式教學實驗方案:圖3-4J*44B0-1B教學實驗箱1.J*44B0-1B教學實驗箱:硬件系統(tǒng)包含了嵌入式系統(tǒng)開發(fā)應用所需的大局部接口,如:以太網、USB口、音頻接口、LCD以及觸摸屏、鍵盤。是一款經濟型的ARM教學實驗平臺。圖3-4J*44B0-1B教學實驗箱2.J*44B0-1/J*44B0-2/J*44B0-3教學實驗箱:除了包含J*44B0-1B的所有硬件接口以外,J*44B0-1另外添加了多個高級接口:如CF卡接口、IDE接口、標準計算機打印口等;J*44B0-2在J*44B0-1的根底上添加GPRS無線通訊模塊,可以進展通話和短信等高級實驗;J*44B0-3在J*44B0-2的根底上又添加了GPS全球定位模塊。且J*44B0-1/J*44B0-2/J*44B0-3采用模塊化設計,可任意選配和升級高級模塊〔ARM核心板、GPRS模塊和GPS模塊〕。J*44B0-3所包含的接口如以下圖所示:圖3-5J*44B0-3教學實驗箱3.3J*44B0教學實驗系統(tǒng)硬件資源3.3.1J*44B0教學實驗系統(tǒng)硬件模塊J*44B0教學實驗系統(tǒng)的硬件局部包括:根本模塊、調試模塊、通訊模塊、人機交互模塊、A/D模塊、步進電機驅動模塊、IDE/CF接口模塊、GPRS模塊、GPS模塊。 1.根本模塊:SDRAM存儲器。主板包含8MBSDRAM。由一片16位數(shù)據(jù)寬度的SDRAM存儲器組成,地址從0*0c000000~0*0c800000。S3C44B0*微處理器內部集成了8KBRAM,它既可作為RAM用,也可以作為高速緩存即cache使用,我們通常將它配置為Cache以提高系統(tǒng)性能;FLASH存儲器:主板包含4MBFLASH存儲器,內部存放啟動代碼Bootloader、uCLinu*內核映象、uC/OS-II演示程序代碼、IIS測試聲音文件等。其數(shù)據(jù)寬度為16位,地址從:0*00000000~0*00400000;串行通訊口:主板包含2個UART接口:UART0和UART1,UART0在Bootloader、演示程序、uCLinu*和多個實驗中用于人機交互〔通過超級終端〕以及文件傳輸;IIS錄放音接口:主板有一個可以基于DMA操作的IIS總線接口,可進展立體聲錄放音;I2C總線接口:與24C4個LED跑馬燈:可獨立軟件編程;6個七段數(shù)碼管:6個共陽七段數(shù)碼管;外部中斷測試:一個按鍵用于外部中斷0的測試;復位按鍵:按鍵用于CPU復位;兩通道通用DMA,兩通道具有外部請求引腳的外設DMA;五個PWM定時器和一個內部定時器;看門狗定時器;71個通用I/O端口,8個外部中斷源;8通道10-bitADC。2.調試模塊:標準JTAG接口:14針標準JTAG接口,該接口用于高速仿真調試;簡易JTAG調試接口:直連標準計算機并口,調試接口,該接口用于簡易仿真調試。3.通訊模塊:以太網通訊接口:10M以太網卡;USB接口:遵循USB1.1標準;標準計算機打印口〔并口〕。4.人機交互模塊:顯示器/觸摸屏:5.7英寸,STN256色LCD顯示器,320按鍵:4*4按鍵。5.A/D模塊:8通道10bitA/D模塊。6.步進電機驅動模塊:兩相步進電機驅動。7.IDE/CF接口模塊:標準IDE硬盤接口;標準CF卡接口。8.GPRS模塊:GPRS無線通訊模塊。9.GPS模塊:GPS全球定位系統(tǒng)模塊。3.3.2J*44B0教學實驗系統(tǒng)硬件資源分配1.地址空間分配以及片選信號定義表3-1J*44B0地址空間分配表地址區(qū)間說明數(shù)據(jù)寬度(位)讀/寫屬性0*00000000~0*0003fffffFLASH存儲器:28F320,4M字節(jié);16R/W0*02000000控制LED跑馬燈及鍵盤掃描:bit0~3控制鍵盤掃描;bit4~7控制跑馬燈的顯示。低電平有效。8W0*02000002讀入鍵盤掃描值:bit0~3有效,*位為低時,對應列有鍵按下。8R0*02000004數(shù)碼管數(shù)據(jù)存放器。8W0*02000006數(shù)碼管掃描控制存放器:bit0~bit5:低電平有效。8W0*04000000~0*0400000f網絡接口芯片CS8900A讀寫16R/W0*06000000~0*06000001USB接口芯片PDIUSBD12讀寫8R/W0*08000000~0*080007ffCF卡MEMORY模式屬性存放器8/16R/W0*08000800~0*080008ffCF卡MEMORY模式公共存放器8/16R/W0*08040000~0*080407ffCF卡I/O模式8/16R/W0*080d0000~0*080d000f選擇IDE命令塊存放器8/16R/W0*080e0000~0*080e000f選擇IDE控制塊存放器8/16R/W0*0a000000并口控制存放器:bit4:nERRORbit3:SELECTbit2:PEbit1:BUSY bit0:nACK8W0*0a000000并口狀態(tài)存放器:bit3:nSTROBEbit2:AUTOFEEDbit1:nINITbit0:nSELECT_IN8R0*0a000002并口數(shù)據(jù)緩存器8R/W0*0a000004控制存放器0:bit5:CF卡電源控制;1:翻開;0:關閉bit4:CF卡復位信號;1:復位;0:工作模式bit3:IOIS16,CF卡IO模式16位指示,MEMORY模式寫保護1:MEMORY模式可寫;0:IO模式16位讀寫,MEMORY模式寫保護bit2:GPRS睡眠控制。1:持續(xù)兩秒將使GPRS進入睡眠模式;0:正常工作模式bit1..0:串行口切換控制00:兩串口均直接通過DB9接口接出01:串口0直接接出,串口1接到GPRS10:串口0接到GPS,串口1直接接出11:串口0接到GPS,串口1接到GPRS8W0*0a000006控制存放器1bit4:IDE_RST,IDE復位信號。1:持續(xù)25us復位;0:正常工作模式bit3:MOTOR_CTRL,步進電機驅動使能信號。1:驅動使能;0:驅動制止bit2:電機正反轉控制。1:電機正轉;0:電機反轉bit1..0:步進電機工作模式控制00:Halfstepmode01:Normaldrivemode其他:保存8W0*0C000000~0*0C7fffffSDRAM存儲器地址空間:8M字節(jié)16R/W2.外部中斷分配表3-2J*44B0外部中斷分配表中斷口說明備注INT0按鍵中斷測試INT1IDE中斷INT2USB中斷INT3觸摸屏中斷INT4網口中斷INT5GPRS中斷JP2的1、2斷接,選擇L3DATA;2、3斷接,選擇GPRS中斷。INT6CF卡中斷JP2的1、2斷接,選擇L3LOCK;2、3斷接,選擇CF卡中斷。3.A/D端口分配表3-3J*44B0A/D端口分配表A/D口說明備注AIN0采集觸摸屏的*坐標用于觸摸屏AIN1采集觸摸屏的Y坐標用于觸摸屏AIN2A/D采集口測試0用于A/D測試AIN3A/D采集口測試1用于A/D測試4.RAM空間組織存儲空間的定制是嵌入式系統(tǒng)開發(fā)的一個特色,我們可以根據(jù)自己的需要自行規(guī)定內存的使用。在本教學實驗系統(tǒng)中,SDRAM地址*圍從0*0c000000–0*0c800000共8Mbytes。在不同的程序中,SDRAM空間*圍被分配成不同的區(qū)域用于不同的用途,下表是實驗測試程序所用的一個默認分配方式,它的代碼空間和數(shù)據(jù)空間分配如下:表3-4BOOTLOADER程序SDRAM空間分配表開場地址完畢地址用途0*0c0000000*0c200000未用0*0c2000000*0c700000程序升級用〔大小由待升級的程序決定〕0*0c7000000*0c710000Bootloader程序0*0c7100000*0c7fff00棧表3-5用戶程序SDRAM空間分配表開場地址完畢地址用途0*0c0000000*0c未用0*0c0000080*0c700000功能演示程序0*0c7ffa000*0c7fff00棧0*0c7fff000*0c800000中斷向量表5.FLASH空間組織FLASH地址*圍從0*00000000–0*00400000共4Mbytes。其空間組織如下表:表3-6FLASH空間分配表開場地址完畢地址用途0*000000000*00010000BOOTLOADER代碼0*000100000*0009000016×16漢字庫0*000900000*00A0000016×8ASCII字庫0*000A00000*00100000IIS錄音測試wav文件0*001000000*001A0000演示程序代碼0*001A00000*00400000uClinu*演示程序3.4J*44B0教學實驗系統(tǒng)的軟件安裝運行ADTIDE安裝光盤中的setup程序,該程序位于光盤setup目錄下。按照提示操作即可。安裝序列號位于ADT1000仿真器的反面。本卷須知:1.安裝路徑可以任意指定。由于GNU編譯器不識別包含空格的路徑,所以設定安裝路徑時不能指定包含空格的路徑,如:“C:\ProgramFiles\adt1000”就是一個非法路徑;同時在以后建立的工程,或者文件,以及需要的庫,所在的完整路徑中都不能包含空格,否則將會導致編譯失敗;2.安裝完畢后,需要重新啟動計算機,使一些默認的設置以及環(huán)境生效;3.如果是WinNT、Win2000或Win*P操作系統(tǒng),安裝軟件時需要以管理員〔Administrator〕的身份進展操作,調試時也需要使用者有管理員權限。3.5J*44B0教學實驗系統(tǒng)編程實例下面通過一個簡單的例子來介紹ADTIDE的使用方法,關于ADTIDE的更加詳細的使用說明請參考“附錄BANSIC和GCC庫文件的使用及設置〞以及“ADTIDE用戶手冊〞。3.5.1安裝完ADTIDE并重新啟動計算機后,就可以開場創(chuàng)立工程。運行ADTIDE,出現(xiàn)如下的界面:圖3-6ADTIDE運行界面創(chuàng)立一個新工程;選擇File菜單的New,出現(xiàn)一個新建對話框,如圖3-7。我們可以通過該對話框建立新文件,建立新工程,以及新的工作區(qū),分別對應于該對話框的第1、2、3子框。此時我們選擇第二個頁面創(chuàng)立新工程。在該頁面中“TargetDevice〞指出了可選的目標連接設備:SoftSim、ARM7LPT、ARM9LPT,分別表示使用軟件仿真模擬、使用并口調試基于ARM7核的目標系統(tǒng)、使用并口調試基于ARM9核的目標系統(tǒng)。該目標平臺使用的CPU是S3C44B0*,它使用ARM7內核,所以此處選擇ARM7LPT。圖3-7ADTIDE創(chuàng)立工程的對話框如上圖所示,在“ProjcetName〞位置輸入工程的名稱,在“Location〞中修改該工程的位置,最后在“ProjcetType〞中選擇“E*EC〞,表示該工程要生成一個可執(zhí)行代碼。點擊“OK〞,按照上圖的輸入,將在“F:\E*amples\LedDemo〞下建立一個叫LedDemo的工程。本卷須知:1.可以創(chuàng)立一個工程來生成庫,以便其他工程可以調用。要建立一個庫可以通過在“ProjectType〞中選擇“LIB〞實現(xiàn);2.在創(chuàng)立工程前已經翻開了工作區(qū),最下面的選項“Addtocurrentworkspace〞將會變成使能狀態(tài);如果選擇該選項,創(chuàng)立的工程將被參加到當前已經翻開的工作區(qū)中;3.與軟件安裝一樣,工程的保存路徑不能包含空格。建立一個新的代碼文件,輸入實驗代碼并存盤;選擇File菜單的New,并選擇第一個子頁面,如圖3-8。在右邊顯示了4種常見的圖3-8ADTIDE創(chuàng)立文件對話框文件類型:C源代碼、C頭文件、匯編代碼、文本文件。如果創(chuàng)立前三種類型的文件,IDE會在輸入的文件名“Filename〞后分別添加后綴“.c〞、“.s〞、“.h〞,可以在創(chuàng)立文件時參加到工程中,即在“Addtoproject〞選項前打“√〞,如上圖;點擊“OK〞,并在編輯窗口輸入實驗代碼。實驗代碼如下:voidMain(void){ inti; for(;;){*((unsignedchar*)0*02000000)=0*FF; /*關閉LED*/ for(i=100000;i!=0;i--); /*延時*/*((unsignedchar*)0*02000000)=0*0F;/*翻開LED*/ for(i=100000;i!=0;i--); /*延時*/ }}本卷須知:1.GNU編譯工具根據(jù)文件名的后綴來選擇編譯器,并且后綴有大小寫區(qū)分,對于匯編和C代碼的后綴分別是:“.s〞和“.c〞;2.在“Filename〞輸入欄,無需輸入后綴,IDE會根據(jù)不同的文件類型自動添加后綴;3.在創(chuàng)立新文件前,如果已經翻開工作區(qū),且工作區(qū)中包含多個工程,則可以在“Addtoproject〞下拉列表框中選擇需要參加的工程;4.在上述實例代碼中,只簡單的實現(xiàn)了對發(fā)光二極管的控制,實際上在具體的嵌入式系統(tǒng)中,應用程序執(zhí)行前還有一個初始化過程,用于進展硬件初始化和軟件環(huán)境的配置,本實驗系統(tǒng)的初始化工作已經由Bootloader完成,有關Bootloader的細節(jié)請參見“Bootloader編寫實驗〞局部。將輸入的文件添加到工程中;如果在上一步創(chuàng)立文件時選中了“Addtoproject〞,可以跳過該步驟,如果當時沒有選擇該選項,則需要將文件手工添加到工程中,方法如下:選擇菜單“Project〞的“Addtoproject〞,可以看到兩個子菜單,選擇“AddfilestoLedDemo〞〔此處的LedDemo為當前的工程名〕,并通過文件選擇對話框將剛剛輸入的文件參加到工程中即可。3.5.2工程環(huán)境配置由于嵌入式系統(tǒng)的可定制性,使得嵌入式系統(tǒng)軟件的設置變得比較復雜,通過設置我們可以明確地定義軟件的代碼組織、數(shù)據(jù)組織、規(guī)定程序入口等。選擇菜單“Project〞的“Setting〞子菜單,如圖3-9。這是一個包含多頁的對話框,我們可以對工程的各個局部進展相應的設置,操作步驟如下:圖3-9ADTIDE工程設置對話框General設置General頁包括調試器的選擇以及恢復缺省配置參數(shù)功能,如圖3-9所示。在Debuggerdevice下拉式列表中選擇調試設備。目前提供三個版本的調試設備,軟件仿真版本〔SoftSim〕、并口ARM7調試設備ARM7LPT以及并口ARM9調試設備ARM9LPT。對于具體硬件調試設備還需要進一步選擇通訊端口。通過按鈕Resetconfig可以將當前選擇的配置方案復位到缺省配置。如果在創(chuàng)立工程時,在“Targetdevices〞中選擇的是“ARM7LPT〞并且使用LPT1則可以跳過該步驟。如果沒有選擇“ARM7LPT〞或者使用的不是LPT1都可以在此進展設置。本次實驗中我們使用ADT1000仿真器來進展調試通訊,需要選擇“ARM7LPT〞。在“General〞頁的“Debuggerdevice〞的下拉列表框中選擇“ARM7LPT〞,同時選擇使用的并口號,通常我們使用“LPT1〞。Debug設置“Downloadcase〞選項為用戶提供了兩種下載調試文件的途徑?!癇uildCase/編譯設置方案〞和“CustomizedCase/客戶配置方案〞。在前一種方案中,集成調試環(huán)境將選擇當前工程的輸出文件〔.elf文件〕為程序下載文件和調試信息文件,此時,“Customizedcase〞以及“Endian〞中的選項均不可設置。如果選擇客戶配置方案,則以上選項均可以由用戶執(zhí)行設置,而與當前工程無關。圖3-10ADTIDE工程設置Debug頁對話框“Downloadverify〞選項用于設置程序下載到目標板后是否進展校驗“Downloadedfile〞選項用于設置下載到目標板的程序文件名。它只有在“Downloadcase〞設置為“CustomizedCase/客戶配置方案〞時可編輯“Toaddress〞選項用于設置程序下載到的目標板地址,支持十進制和十六進制編輯,如“123456〞或“0*02000000〞。它只有在“Downloadcase〞設置為CustomizedCase/客戶配置方案時可以編輯?!癊ndian〞用于設置處理器當前所支持的存儲區(qū)字節(jié)排列方式是BigEndian還是LittleEndian。它只有在“Downloadcase〞設置為“CustomizedCase/客戶配置方案〞時可以編輯。“Actionaftertargetconnected〞選項組用于設置系統(tǒng)連接目標板后的動作,我們支持三種方式的動作〔本次實驗可以選擇“None〞〕:“None〞選項表示連接目標板后系統(tǒng)無任何行為。設置“Autodownload/自動下載〞選項將在連接目標板后自動下載設定的下載文件。“mandscript/命令腳本〞選項用于選取在系統(tǒng)連接目標板后將根據(jù)命令腳本文件自動完成一系列命令。本卷須知:1.“Downloadedfile〞中設置的文件路徑可設置為絕對路徑和相對路徑,當設置為相對路徑時,它是相對于當前工程文件所在的路徑;2.“Downloadedfile〞中支持$(TargetName)宏,$(TargetName)缺省由工程名稱加上擴展名.elf(可執(zhí)行工程)或者.o(庫工程)組成;3.在設置時可以選擇使用命令腳本文件,該文件由一系列調試命令組成,可以使用該文件來讀寫一些必須配置的存放器〔如配置RAM的存放器、去除中斷、關閉中斷等〕,用來完成目標平臺的初始化,該命令腳本使用純文本的方式,下面是該硬件實驗平臺的一個腳本例子:mem.write-l0*01e000000*07000000*INTCONmem.write-l0*01E0000C0*ffffff07 *INTMSKmem.write-l0*01D300000*0 *WTCON******************************************************* Setmemorycontrolregisters(everyCScontrol)* ******************************************************Bank0=OM[1:0],Bank1-5=8bit,Bank6-7,16BITSmem.write-l0*01C800000*02000011mem.write-l0*01C800040*700*GCS0;BOOTROMmem.write-l0*01C800080*700*GCS1mem.write-l0*01C8000Cmem.write-l0*01C800100*700*GCS3mem.write-l0*01C800140*700*GCS4mem.write-l0*01C800180*700*GCS5;mem.write-l0*01C8001Cmem.write-l0*01C800200*00800100*GCS7;NONE*REFRESHRFEN=1,TREFMD=0,trp=3.5clk,trc=7clk,tchr=1clk,count=1579*refcount=2048+1-MCLK*ref_period==2049-66*16=993=0*3e1mem.write-l0*01C800240*e103ac00mem.write-l0*01C800280*16000000*SCLKpowermode,BANKSIZE8M/8Mmem.write-l0*01C8002Cmem.write-l0*01C800300*20000000*MRSR7腳本中可用的命令及其格式如下:表3-7腳本命令選項說明表符號例如說明MANDNAMEmandnamemandName輸入命令名和命令縮寫不區(qū)分大小寫[option]可選參數(shù)或選項,帶方括號的option必選參數(shù)或選項,不帶方括號的Option1/Option2選擇其中之一的參數(shù)與選項pile設置圖3-11ADTIDE工程設置pile頁對話框編譯器的參數(shù)可以通過工程配置對話框的pile頁進展修改,如圖3-11所示。該頁中的命令行參數(shù)用于GNUC編譯器和C++編譯器,所有設置顯示在pileOptions的編輯框中,工程在初始創(chuàng)立時,系統(tǒng)提供缺省設置參數(shù)。在pile頁中,Category組合框中又包含幾類編譯器選項,通過選擇該組合框可以切換到各類選項。一般情況下我們只需要在General子頁中設置頭文件的包含路徑,本次實驗無需修改默認的配置。4〕Assemble設置GNUToolsforARM編譯器的Assemble屬性頁如圖3-12所示,該屬性頁中的命令行開關選項用于匯編器,用戶的所有設置顯示在AssembleOptions的編輯框中,工程在初始創(chuàng)立時,系統(tǒng)提供缺省設置參數(shù)。在Assemble頁中,Category組合框中又包含幾類匯編器選圖3-12ADTIDE工程設置Assemble頁對話框項,通過選擇該組合框可以切換到各類選項。同樣在一般情況下我們只需要在General子頁中設置頭文件的包含路徑,本次實驗沒有匯編代碼,所以也無需修改默認的配置。本卷須知:1.可以手工輸入、修改開關選項,但必須注意保存每個Option之間的空格,并且不得改變和刪除$(SrcFile)和$(ObjFile)宏,它們分別代表源文件和目標文件名稱。系統(tǒng)在執(zhí)行編譯命令行時,將自動替換這兩個宏。2.命令行開關選項中所涉及的所有相對目錄,都是相對工程文件〔apj文件〕所在的目錄。5〕Link設置器的參數(shù)可以通過工程配置對話框的Link頁進展修改,如圖3-13所示。該頁中的命令行參數(shù)用于GNU器,用戶的所有設置顯示在LinkOptions的編輯框中,工程在初始創(chuàng)立時,系統(tǒng)提供缺省設置參數(shù)。在Link頁中,Category組合框中又包含幾類器選項,通過選擇該組合框可以切換到各類選項。這一項設置中的ImageEntry子頁以及庫文件的包含路徑都需要仔細設置,下面將具體說明。圖3-13ADTIDE工程設置Link頁對話框本卷須知:1.用戶可以手工輸入、修改開關選項,但必須注意保存每個Option之間的空格,并且不得改變和刪除$(ObjFiles)宏,它分別代表目標文件。系統(tǒng)在執(zhí)行編譯命令行時,將自動替換這個宏。2.命令行開關選項中所涉及的所有相對目錄,都是相對工程文件〔apj文件〕所在的目錄。3.$(TargetName)缺省由工程名稱加上擴展名.elf(可執(zhí)行工程)或者.o(庫工程)組成。General子選項:General類選項如以下圖所示。圖3-14ADTIDE工程設置Link頁General類對話框下表中列出了該類包含的選項及其說明:表3-8general類選項說明表選項名選項說明E*ecutablefile可執(zhí)行工程,時使用arm-elf-ld.e*e應用程序Library庫工程,時使用arm-elf-ar.e*e應用程序Linkerscript定位信息描述腳本文件,只在可執(zhí)行工程可用Output輸出的目標文件名定位信息描述腳本文件在嵌入式系統(tǒng)中非常重要,它用于規(guī)定代碼的組織,有關定位信息描述腳本文件的詳細描述請參見“附錄A定位腳本〞。本次實驗的腳本文件如下,將該文件保存在工程所在的目錄下,取名為ldscript,并在“LinkScript〞中輸入“.\ldscript〞如上圖〔可以將腳本文件以其他名稱保存在其他位置,但“LinkScript〞中的輸入要與之保持一致〕。SECTIONS{ .=0*0c000008; .te*t:{*(.te*t)} .data:{*(.data)} .rodata:{*(.rodata)} .bss:{*(.bss)} __EH_FRAME_BEGIN__=.; __EH_FRAME_END__=.;PROVIDE(__stack=.); .debug_info0:{*(.debug_info)} .debug_line 0:{*(.debug_line)} .debug_abbrev0:{*(.debug_abbrev)} .debug_frame0:{*(.debug_frame)}}本卷須知:1.Output選項可以使用$(TargetName)宏,它缺省由工程名稱加上擴展名.elf(可執(zhí)行工程)或者.o(庫工程)組成;2.當前工程文件〔apj文件〕所在目錄被默認為是當前路徑。Imageentryoptions類選項:Imageentryoptions類選項如以下圖所示。圖3-15ADTIDE工程設置Link頁ImageEntry類對話框下表中列出了該類包含的選項及其說明:表3-9Imageentryoptions類選項說明表選項名選項說明Selectentryfile在該選項下的列表框中,列出了當前工程的所有可的目標文件,選擇一個目標文件,作為命令行中排列的第一個目標文件,當Imageentrypoint參數(shù)被設置的情況下,不必設置該選項Imageentrypoint設置可執(zhí)行程序的入口點,可以設置為入口地址或者入口符號本次實驗只需要Selectentryfile列表框中點擊“LedDemo〞選中它即可。本卷須知:1.ImageEntryOptions選項,只在可執(zhí)行工程中需要設置,庫工程時不需設置;2.在器目標文件時,如果沒有設置入口點參數(shù)〔-e參數(shù)〕,目標文件集合中的第一個目標文件的第一個執(zhí)行指令,被器認為是可執(zhí)行文件的入口點。通常,用戶需要通過selectentryfile指定第一個目標文件。Includedlibraryandlibrary
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉庫人員租賃合同范例
- 做合同范例范例
- 加盟兌店合同范例
- 入暗股合同范例
- 2014版施工合同范例
- 中央采購安裝合同范例
- 企業(yè)網絡設備買賣合同范例
- 加工打包服務合同范例
- 公會解約合同范例
- 上海律師合同范例
- 床旁超聲引導血管穿刺的SOP
- 新編高等數(shù)學(理工類)第8版高職PPT全套教學課件
- (全)電梯安全風險管控清單
- 山東省高院量刑指導意見實施細則
- 教科版五年級科學下冊全套測試卷
- 環(huán)境規(guī)劃與管理第二章理論基礎
- TD-T 1040-2013 土地整治項目制圖規(guī)范
- 《數(shù)字影像設計與制作》統(tǒng)考復習題庫(匯總版)
- 成人有創(chuàng)機械通氣氣道內吸引技術操作
- “雙減”下初中道德與法治分層作業(yè)設計研究 論文
- 發(fā)熱待查病例討論優(yōu)秀課件
評論
0/150
提交評論