資源描述:
《嵌入式系統(tǒng)開發(fā)環(huán)境簡介》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、·21·第1章嵌入式系統(tǒng)開發(fā)環(huán)境簡介第1章嵌入式系統(tǒng)開發(fā)環(huán)境簡介1.1ARMSDT2.5開發(fā)環(huán)境簡介一、實(shí)驗(yàn)?zāi)康氖煜RMSDT2.5開發(fā)環(huán)境,學(xué)會(huì)ARM并行口仿真器的使用。使用SDT編譯、下載、調(diào)試并跟蹤一段已有的程序,了解嵌入式開發(fā)的基本思想和過程。二、實(shí)驗(yàn)內(nèi)容本次實(shí)驗(yàn)使用ARMSDT2.5集成開發(fā)環(huán)境。新建一個(gè)簡單的工程文件,并編譯這個(gè)工程文件。學(xué)習(xí)ARM并行口仿真器的使用和開發(fā)環(huán)境的設(shè)置。下載已經(jīng)編譯好的文件到嵌入式控制器中運(yùn)行。學(xué)會(huì)在程序中設(shè)置斷點(diǎn),觀察系統(tǒng)內(nèi)存和變量,為調(diào)試應(yīng)用程序打下基礎(chǔ)。三、預(yù)備知識(shí)C語言的基礎(chǔ)知識(shí)、程序調(diào)試的基礎(chǔ)知識(shí)和方法。四、實(shí)驗(yàn)設(shè)備及工具(包括軟
2、件調(diào)試工具)硬件:ARM嵌入式開發(fā)平臺(tái)、用于ARM7TDMI的JTAG仿真器、Pentium100以上PC機(jī)。軟件:PC機(jī)操作系統(tǒng)Windows98、Windows2000或WindowsXP,ARMSDT2.51或ADS1.2集成開發(fā)環(huán)境,仿真器驅(qū)動(dòng)程序、超級終端通信程序。五、實(shí)驗(yàn)步驟1.建立工程文件(1)運(yùn)行ARMSDT2.5集成開發(fā)環(huán)境(ARMProjectManager)。選擇File
3、New命令,在對話框中選擇Project選項(xiàng)卡,單擊“確定”按鈕后彈出NewProject對話框,如圖1-1所示,Type為工程模板類型,這里選擇ARMExecutableImage,然后輸入
4、工程名和所在路徑。單擊OK按鈕后新建一個(gè)工程文件。(2)在新建的工程中,如圖1-2所示,選中工程樹的“根部”。使用命令Project
5、Tool·21·第1章嵌入式系統(tǒng)開發(fā)環(huán)境簡介Configurationforwork1.apj
6、=armasm
7、Set,對整個(gè)工程的匯編進(jìn)行設(shè)置。圖1-1新建一個(gè)工程文件圖1-2對整個(gè)工程的匯編進(jìn)行設(shè)置(3)因?yàn)殚_發(fā)板上的嵌入式處理器ARM7TDMI沒有浮點(diǎn)處理器,所以,如圖1-3所示,在彈出的對話框中設(shè)置FloatingPointProcessor為none,并保持其他的設(shè)置不變。(4)選中工程樹的“根部”,通過Project
8、ToolCo
9、nfigurationforwork1.apj
10、asmlink
11、Set命令,對整個(gè)工程的連接方式進(jìn)行設(shè)置。(5)在彈出的對話框中,打開EntryandBase選項(xiàng)卡,如圖1-4所示,設(shè)置連接的Read-Only(只讀)和Read-Write(讀寫)地址。地址0x0c080000是開發(fā)板上SDRAM的真實(shí)地址,是由系統(tǒng)的硬件決定的;0x0c200000指的是系統(tǒng)可讀寫的內(nèi)存地址。也就是說,在0x0c080000~0x0c1fffff之間是只讀區(qū)域,存放程序的代碼段,從0x0c200000開始是程序的數(shù)據(jù)段。圖1-3設(shè)置FloatingPointProcessor為none圖1-4設(shè)置連
12、接的地址提示:用戶可以修改這兩個(gè)數(shù)值來決定程序存儲(chǔ)區(qū)的大小和數(shù)據(jù)存儲(chǔ)區(qū)的大小。但應(yīng)注意SDRAM為8MB,地址范圍為0x0c000000~0x0c7fffff。其中0x0c080000之前的空間是留給LCD顯示緩存區(qū)的。(6)打開Linker·21·第1章嵌入式系統(tǒng)開發(fā)環(huán)境簡介Configuration對話框中的ImageLayout選項(xiàng)卡,如圖1-5所示,設(shè)置程序的入口模塊。指定在生成的代碼中,程序是從44binit.s開始運(yùn)行的,這里填寫44binit.s對應(yīng)的目標(biāo)文件44binit.o,Init是該匯編文件中的代碼段名字。(7)選擇Project
13、EditProjectTemp
14、late命令,系統(tǒng)彈出ProjectTemplateEditor對話框。在該對話框中可以看到一系列步驟名稱。SDT在處理工程文件時(shí)是按這些步驟完成的,每個(gè)步驟設(shè)定了對應(yīng)的操作,以及該操作的輸入、輸出和命令行等。讀者可以選擇已有的步驟,單擊Edit按鈕打開該步驟設(shè)置對話框,觀察每個(gè)步驟所實(shí)現(xiàn)的功能。例如:步驟Compile是把.c和.h文件編譯成.o文件的,而步驟Link則就是把.o文件和.alf文件連接生成.axf文件的。在這些步驟中的設(shè)置建議保留默認(rèn)值。但這里缺少一個(gè)從.axf文件生成所需的.bin文件的步驟,所以使用New按鈕,為編譯器新建一個(gè)步驟,如圖1-6所示,取名為RomI
15、mage。圖1-5設(shè)置程序的入口模塊圖1-6為編譯器新建一個(gè)步驟(8)按照如圖1-7的內(nèi)容設(shè)置步驟RomImage的內(nèi)容。使編譯器編譯的時(shí)候可以生成system.bin文件,這就是系統(tǒng)的可執(zhí)行文件??梢钥闯鲈摬僮鞯妮斎胧钱?dāng)前工程的.axf文件,所在位置是Image,輸出是system.bin,位置在Eprom,操作由fromelf組件完成,命令行是fromelf-nozeropad<$projectname>.axf-binsystem.bin。這里的Im