**: 引言
windows ce.net是微軟公司向嵌入式領域推出的一款作業系統。它最大程度繼承了桌面版windows作業系統的豐富功能,同時又副入了許多新特性,以適應嵌入式領域的實際情況和要求。無論是商業應用需求,還是人們的多**消費需求,都能被採用ce作業系統的裝置很輕鬆的滿足。最新的.net版本較之3.0版本,在實時性和穩定性上有大幅度提高,開始廣泛地被平板電腦、數位相機、彩屏手機、pda等多種高效能產品所採用。
但是,ce並不是乙個通用的安裝版作業系統,在形形色色的嵌入式硬體裝置世界裡, 一款ce系統通常只會針對某一種硬體平台生成。所以,作為原始裝置生產商,必須根據自己的硬體平台和應用場合定製ce,最主要的工作就是編寫適合於自己的板級支援包(bsp)。在bsp中,包含了乙個重要的組成部分——bootloader。建立一未功能完善的bootloader,是開發wince系統的第一步,也是極為關鍵的一步。本文將結合開發例項,介紹如何開發適合於自己硬體的bootloader。
1 定製ce作業系統的基本知識
前面已經提到,由於硬體的不同,bootloader的功能可能有多有少,此處筆者以自己開發bootloader的過程進行敘述。
圖2是筆者bootloader的工程流程。
3.1 啟動部分
首先要實現初台化硬體的功能。在參考板的bootloader目錄下,會發現一些.s檔案,可能會是init.s或者是reset.s等,這樣的檔案是cpu加電後最先執行的**。由於此處是用組合語言編寫的,所以與cpu關係緊密。一般參考板的cpu與開發平台的cpu會是相同或者是同乙個架構的。筆者使用的是屬於同一種cpu的情況,所以對暫存器的定義和初始化流程都可以不加改動。接著就是對於平台配置的分析,包括平台儲存空間的分配、外圍裝置的工作設定等。一般這裡的區別是非常大的。所以必須要對cpu暫存器的值作相應設定。這部分工作可能需要cpu提供商方面的幫助。
應該說,這部分工作是bootloader的一大重點,但由於和實際的硬體非常大,所以不可能做進一步的詳細敘述。
3.2 主控部分
bootloader程式可以通過pb的整合編譯環境編譯鏈結,控制檔案為.bib檔案,下面是乙個簡單的bootloader的.bib檔案。
memory
cli 9fc00000 00050000 ramimage
ram 80080000 00070000 ram
config
compression=on
sre=on
romstart=9fc00000
romsize=00020000
romwidth=32
romoffet=000000
modules
nk.exe $(_flatreleasedir).exe cli
WinCE系統下BootLoader的開發
wince系統下bootloader的開發 未知 引言windows ce.net是微軟公司向嵌入式領域推出的一款作業系統。它最大程度繼承了桌面版windows作業系統的豐富功能,同時又副入了許多新特性,以適應嵌入式領域的實際情況和要求。無論是商業應用需求,還是人們的多 消費需求,都能被採用ce作業...
WinCE系統下BootLoader的開發
引言 windows ce.net是微軟公司向嵌入式領域推出的一款作業系統。它最大程度繼承了桌面版windows作業系統的豐富功能,同時又副入了許多新特性,以適應嵌入式領域的實際情況和要求。無論是商業應用需求,還是人們的多 消費需求,都能被採用ce作業系統的裝置很輕鬆的滿足。最新的.net版本較之3...
WinCE系統USB Mass Storage實現
在談wince的usb mass storage實現之前,首先要具備以下條件 1.開發板支援usbclient裝置。2.開發板上至少有一種儲存裝置可以被用來對映為u盤。現在的處理器一般都帶有usb client或者是usb otg控制器,並且bsp中都有相應的驅動。對於儲存裝置來說,nandflas...