熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > U-Boot在LPC2210上的移植分析

U-Boot在LPC2210上的移植分析

作者: 時間:2012-03-22 來源:網(wǎng)絡 收藏

5.4 board/dx2210開發(fā)板相關(guān)文件

在這個目錄中主要包含dx2210.c、config.mk、flash.c、memsetup.S、u-boot.lds幾個文件。在 dx2210.c文件中主要工作為初始化開發(fā)板,在文件中編寫int board_init(void)函數(shù)定義各個復用I/O端口的信息、初始化RAM芯片等完成初始化工作。由于在u-boot代碼中是用抽象成一種結(jié)構(gòu)體來描述開發(fā)板硬件信息以便于移植工作,因此在文件中修改:

gd->bd->bi_arch_number=MACH_TYPE_; //開發(fā)板架構(gòu)ID號

gd->bd->bi_boot_params=0x81000100; //傳遞給ucinux內(nèi)核的參數(shù)

gd->bd->bi_dram[0].start=PHYS_SDRAM_1;

gd->bd->bi_dram[0].size=PHYS_SDRAM_1_SIZE; //RAM內(nèi)存配置

u-boot.lds是給Linker程序使用的配置文件,主要修改部分:

SECTIONS

{ .=0x80000000; //起始地址為0x80000000

.=ALIGN(4); //4字節(jié)對齊

.text :

{ cpu//start.o (.text)

*(.text) //text段的起始是start.S的text段

memsetup.S匯編文件主要是用來初始化RAM,在memsetup.S文件中配置開發(fā)板用到的存儲器組,然后根據(jù)MT45W4MW16芯片手冊驅(qū)動RAM;Flash芯片的驅(qū)動代碼在flash.c文件中,由于開發(fā)板的Flash芯片SST39VF160與B2開發(fā)板芯片相同,直接復制后即可。

6.生成目標文件完成移植工作

移植工作完成后在SHELL環(huán)境下依次運行如下命令:make clean; make dx2210_config;make。成功編譯后生成4個映像文件分別是:u-boot.hex文件: 映像原始的INTEL HEX格式文件;u-boot.map文件:y映像的符號表;u-boot.srec文件:映像的S-Record格式文件;System.map文件: U-Boot映像的符號表。使用Flash燒寫工具將u-boot.hex文件按照16進制格式下載到Nor Flash中,再將uclinux內(nèi)核映像文件和根文件系統(tǒng)影響文件init.img燒寫到Nor Flash的指定地址后,可以看到如圖2所示的存儲空間分布:

圖2 存儲空間映射

其中u-boot映像文件存放在Flash的起始地址0x80000000處,相當于程序的邏輯地址0x0處與硬件確定的復位向量相符合;u-boot在stage2部分將Flash中的內(nèi)核映像和根文件系統(tǒng)映像復制到從0x81008000開始的2MB內(nèi)存范圍內(nèi),空出來的32K內(nèi)存空間主要來存放uclinux內(nèi)核的一些全局的數(shù)據(jù)結(jié)構(gòu),如啟動參數(shù)和內(nèi)核頁表等信息。

7.結(jié)束語

本文首先闡述了引導程序得基本原理,在介紹了開放源代碼程序U-Boot軟件基礎(chǔ)上,以 ARM7處理器及其相關(guān)開發(fā)板為例,完成了U-Boot軟件的移植工作。前期的啟動引導程序的移植工作是嵌入式系統(tǒng)開發(fā)的重要環(huán)節(jié),在此基礎(chǔ)上可以更加深入的進行嵌入式系統(tǒng)開發(fā)。

本文作者創(chuàng)新點:本文在詳細的分析U-Boot軟件的基礎(chǔ)上,針對U-Boot軟件本身并不支持的ARM7 LPC2210,本文介紹了在U-Boot軟件中添加相關(guān)代碼的方法并完成移植的實例,為更加深入的后續(xù)嵌入式開發(fā)打下良好基礎(chǔ)。

參考文獻:

[1] The Denx U-Boot and Linux Guide. http://www.denx.de/twiki/bin/view/DULG/Manual.

[3] 周立功等.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京航空航天大學出版社.2005.1; 129-154

[4] 孫瓊.嵌入式Linux應用程序開發(fā)詳解[M].人民郵電出版社.2006.7; 108-128

[5] 白偉平,包啟亮.基于ARM的嵌入式Boot Loader淺析[J].微計算機信息,2006,4:99-100


上一頁 1 2 3 下一頁

關(guān)鍵詞: Bootloader U-Boot LPC2210

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉