基于S3C44B0X的Bootloader設計與實(shí)現
在Bootloader stage1部分的最后是堆棧的設置,由于A(yíng)RM有5種異常模式,每一種模式的堆棧指針寄存器(SP)都是獨立的,因此,對程序中需要用到的每一種模式都要給SP定義一個(gè)堆棧地址。以中止模式SP堆棧地址的定義為例:
ORR r1,r0,#ABORTMODE|NOINT
MSR cpsr_cxsf,r1
LDR sp,=AbortStack
至此,匯編語(yǔ)言程序段的任務(wù)基本完成,執行命令BL Main 轉到由C語(yǔ)言編寫(xiě)的核心程序,操作系統的內核就可通過(guò)該C程序加載到RAM,獲得對系統的控制權。
Bootloader的Stage2部分主要用于導入操作系統內核,一般通過(guò)串口建立連接,以獲取命令、打印與用戶(hù)的交流信息等,這里限于篇幅不再加以詳述。
5.結束語(yǔ)
作為嵌入式系統軟件的最底層,Bootloader是系統上電后啟動(dòng)運行的第一個(gè)程序,類(lèi)似于PC機上的BIOS,主要負責整個(gè)硬件系統的初始化和軟件系統啟動(dòng)的準備工作。Bootloader是嵌入式系統開(kāi)發(fā)的重點(diǎn)和難點(diǎn),也是系統運行的一個(gè)基本前提條件。設計和實(shí)現一個(gè)好的Bootloader,可以大大增強系統的穩定性,提高系統的實(shí)時(shí)性。
本論文創(chuàng )新觀(guān)點(diǎn)是:設計了具有較高性?xún)r(jià)比的ARM7核心板,結合實(shí)際應用詳細分析了S3C44B0X的存儲空間映射,設計實(shí)現的基于S3C44B0X的 Bootloader具有典型代表性、良好的健壯性和可移植性,只須有針對性的稍加修改,就可應用到各種類(lèi)似的嵌入式平臺中,對進(jìn)一步開(kāi)發(fā)復雜系統的 Bootloader具有很好的借鑒和啟發(fā)作用。
本項目經(jīng)濟效益(30萬(wàn)元),包括Internet接入設備研制、GPRS網(wǎng)絡(luò )接入設備研制和GPRS-Internet網(wǎng)關(guān)軟件研制三部分。 Internet接入設備由數據前端采集盒和嵌入式ARM系統構成,嵌入式ARM系統通過(guò)串口接收單片機發(fā)來(lái)的數據并將這些數據利用TCP/IP協(xié)議通過(guò)網(wǎng)線(xiàn)發(fā)送到噪聲數據中心。
參考文獻:
[1]白偉平等.基于ARM的嵌入式Bootloader淺析[J].微計算機信息,2006,4-2:99-100
[2]夏靖波等.嵌入式系統原理與開(kāi)發(fā)[M].西安電子科技大學(xué)出版社.2006
[3]Samsung Limited. S3C44BOX RISC Microprocessor Datasheet[EB/OL]. 2001
[4]孫天澤等.嵌入式設計與Linux驅動(dòng)開(kāi)發(fā)指南-基于ARM9處理器[M].電子工業(yè)出版社.2006
存儲器相關(guān)文章:存儲器原理
評論