摘要:給出了一種基于intel PXA263微處理器和Windows CE.net嵌入式操作系統(tǒng)的智能移動信息終端的設計方法,介紹了硬件平臺的構建方法以及在構建的平臺上移植Windows CE.net嵌入式操作系統(tǒng)的具體步驟。實踐證明,該系統(tǒng)具有功能強、可靠性高、穩(wěn)定性好、功耗低、攜帶方便等優(yōu)點,具有良好的應用前景。
關鍵詞:Intel PXA263處理器 Windows CE.net嵌入式系統(tǒng) 智能移動信息終端
近年來,Internet的迅速普及并向家庭領域的不斷擴展,使得消費電子、計算機、通信(3C)一體化趨勢日趨明顯,嵌入式系統(tǒng)再度成為研究與應用的熱點??梢灶A見,伴隨著需求的增長,有著體積小、耗能少、應用靈活、功能強大、可靠性強等諸多優(yōu)點的嵌入式系統(tǒng)定會有著無法估計的應用前景。Intel Xscale PXA263是一種十分先進的嵌入式處理器,它采用Xscale核心,頻率為200~400MHz,可以加強微處理器速度的管理,加快多媒體處理的速度,并支持802.11b、藍牙技術USB接口。Intel的Xscale技術將手持設備的功能推上了一個新的高度,其電源管理能力提供了無與倫比的操作效率。配合Microsoft的嵌入式操作系統(tǒng)Windows CE.net,將會進一步提升系統(tǒng)的整體性能。本文將通過一個具體的例子向讀者介紹一種基于intel PXA263處理器和Windows CE.net操作系統(tǒng)的軟硬件平臺的設計方法。
1 硬件平臺的構建
1.1 intel PXA263處理器
intel PXA263處理器是Intel公司新近推出了一款嵌入式微處理器,PXA263基于intel的多晶片產(chǎn)品(MCP)封裝技術,也是第一套創(chuàng)新[堆棧式]處理器。其內部整合了32位的32MB intel StrataFlash內存與含Intel Xscale技術的處理器,比其它分離(stand alone)型產(chǎn)品節(jié)省72%的空間,可在體積更小的單系統(tǒng)封裝內提供更強的運算與內存功能。PXA263能減少產(chǎn)品使用的零組件數(shù)量,讓制造商開發(fā)出新穎獨特的功能,其中包括執(zhí)行各種效能密集應用,如MPEG 4影片譯碼、語音與手寫辨識、游戲等。
1.2 硬件平臺的設計
本智能移動信息終端要求采用Microsoft Windows CE. Net嵌入式操作系統(tǒng),能夠通過CCD攝像頭實現(xiàn)圖像的輸入,通過觸摸屏實現(xiàn)輸入,同時也能夠通過GPRS模塊和另的終端以及主控設備實現(xiàn)遠程數(shù)據(jù)傳輸和通信根據(jù)PXA263的特點和應用要求,需要首先開發(fā)一個硬件平臺(以下WindRain 稱版),其具體的原理框圖如圖1所示,WindRain板主要由intel PXA263微處理器、外部RAM、CCD接口、GPRS模塊、LCD、USB接口、串口等組成,同時可以通過SD卡和CF卡實現(xiàn)外部存儲器的擴展。
2 Windows CE. Net操作系統(tǒng)的移植
2.1 Windows CE. Net和開發(fā)平臺Platform Builder 4.2
Windows CE. Net是Microsoft推出Windows CE3.0的后繼產(chǎn)品,是一個緊湊、完整和可擴展的嵌入式操作系統(tǒng),該系統(tǒng)具有完整的操作系統(tǒng)特性集和端對端開發(fā)環(huán)境,是一個多線程、多任務、確定性的實時、完全搶先式優(yōu)先級的操作系統(tǒng),特別適用于有限資源的硬件平臺。Windows CE. Net支持超過1400條的普通Microsoft Win32 API和其它的編程接口,包括組件對象模型(COM)、Microsoft基本類庫(MFC)、Microsfot Activex控制、Microsoft活動模板庫(ATL)等,其模塊化的設計方式使得系統(tǒng)開發(fā)人員和應用開發(fā)人員能夠為多種多樣的產(chǎn)品所定制。
Platform Builder 4.2是Microsoft公司為開發(fā)基于Windows CE. Net操作系統(tǒng)的可定制平臺而專門設計的集成開發(fā)開臺,包括集成開發(fā)環(huán)境、平臺生成器、SDK導出器、調試器、遠程實用工具、仿真器等。它能使用戶方便地設計和調試基于Windows CE. Net的平臺。
2.2 Windows CE. Net的一般開發(fā)流程
嵌入式Windows CE. Net的一般開發(fā)流程如下:
a操作系統(tǒng)的定制
*定制BSP(包括Bootloader的編寫)
*定制系統(tǒng)模塊
*定制OAL、Driver、shell
*完成操作系統(tǒng)的定制以后,可能通過Platform Builder 4.2編譯生成NK.bin或者NK.Nb0文件,至此Windows CE. Net的內核就定制完成了,接下來便可以開發(fā)自己的應用程序;
b應用程序的開發(fā)
*安裝SDK,聯(lián)機測試建立開發(fā)環(huán)境污染
*開發(fā)中間模塊
*開發(fā)應用程序,最后形成exe文件
c產(chǎn)品的生成
*發(fā)布鞋(可以兩種形式:AP與NK.bin 分開發(fā)布或者是AP集成進NK.bin 發(fā)布)。
*下載到硬件平臺的Flash 中
*脫機運行
其流程可以如圖2所示。
2.3 基于WindRain硬件平臺的Windows CE. Net操作系統(tǒng)開發(fā)流程
a開發(fā)基于WindRain板的BSP(Board Support Package):
BSP的開發(fā)主要包括Bootloader 的開發(fā)、OAL(OEM Adaptive Layer )的開發(fā)、本地驅動程序的開發(fā)、平臺文件配置等。
(1)Bootloader主要的開發(fā)
Bootloader主要用來管理目標平臺的啟動過程,包括初始化硬件設備,下載操作系統(tǒng)的映像文件等。有了Bootloader,用戶可以快速下載一個操作系統(tǒng)的映像并在硬件平臺下運行。Bootloader的開發(fā)是BSP開發(fā)的第一步,也是關鍵的一步。只有得到一個穩(wěn)定工作的Lo ader程序,才能夠更進一步開發(fā)WinCE的BSP,直至最后整個系統(tǒng)的成功。
具體步驟是:運行Platform Builder 4.2,選擇Platform-BSP Wizard,從intel DBPXA250 DEV Platform:ARMV4I克隆一個新的BSP,命名為MyPxaPlat。完成后,從資源管理器可以查看到在%-winceroot %(筆者機子上為D:/wince420)中徑下面的Platform中新增了一個目錄MyPxaPlat。根據(jù)硬件平臺的特點,修改% winceroot %的源文件fwxsc1.s、main.c、Flash. C、Edeviceinit. C等,使其符合自己的硬件平臺。為了調試方便通常在函數(shù)OEMPlatformInit中加入一些自定義命令的處理,這樣便可以通過串口接收命令完成相慶的功能。進入DOS命令行提示符,分別輸入cd-winceroot=D: D 、cd%-winceroot%,wince ARMV4I HLBASEE MYPXAPLAT, 完成命令行解釋器的設定,然后運行sysgen,定位%-winceroot%,
build-c、romimage boot.bib,在%-winceroot%
ARMV4I路徑下可以看到Eboot. exe、Eboot. bin、. nb0等文件,通過Jtag向Flash中寫入Eboot.nb0文件,上電運行,就可以從超級終端中看到一些啟動和調試信息。
(2)OAL(Adaptive Layer)
OAL即設備商適配層中指位于Windows CE內核和目標硬件平臺之間的一個代碼層。開發(fā)OAL的目的是為了使Windows CE.net內核和目標硬件之間實現(xiàn)通信,包括處理中斷、定時器等。
OAL的實現(xiàn)也是在fwxsc1.s、main. c、Flash.c、Edeviceinit. C等文件中,根據(jù)需要修改相應代碼,并在此基礎上通過Build工具生成Buildexe目錄、內核執(zhí)行鏡像Kernkitl. exe以及CEDDK.dll文件等。
圖2
(3)驅動程序的開發(fā)
Device Drivers(驅動程序)是指能夠管理虛擬或者物理設備、協(xié)議、服務等的一段軟件模塊,操作系統(tǒng)通過驅動程序直接和硬件打交道。
設備驅動設計的具體步驟是通過Platform Builder創(chuàng)建一個新的平臺,然后根據(jù)硬件平臺的需要插入和移除驅動,需要修改的文件有Platform. Bib、Platform. reg及驅動程序源代碼等,下面對顯示驅動為例說明具體的設計方法:
I根據(jù)自己的硬件修改相關的源代碼
在platform.bib中插入DLL
ddi.dll $(-FLATRELEASEDIR)video. dll NK SH
在platform. reg中檢查屏幕的size和Bpp
"DisplayType "="LTM04C380K "
"CxScreen "=dword: 280
"CyScreen "=dword: 1E0
"Bpp "=dword: 10
定位目錄D: LCD,通過build
sa2video. dll文件。
II調試驅動文件。其它的設備驅動都可以仿照上述思路進行開發(fā)。
(4)平臺文件的配置
平臺配置文件包括源代碼配置文件和操作系統(tǒng)鏡像配置文件。源代碼配置文件主要上告訴Build工具需要用到的路徑、C或Visual C ++的源文件以及生成什么類型的二進制文件等,包括Dirs文件、Sources文件和Makefile文件等。操作系統(tǒng)鏡像配置文件則主要用于給Makeimag工具生成操作系統(tǒng)鏡像,包括.bib、.reg、.dat、.db等文件。
由于筆者的BSP是通過克隆生成的,所以源代碼配置文件可以不做修改,只需根據(jù)需要對像配置文件做相應的修改就行了。
b在Platform Builader中配置內核和編譯映像
具體步驟是:打開Platform Builder,通過Manage Catalog Features調入上面生成的BSP(即.cec文件),運行New Platform Wizard生成一個新的Project,通過Build菜單,編譯便可得到Windows CE. Net映像文件Nk. nb0和NK. bin。
c導出平臺SDK并編寫應用程序
編譯完成后,通過Project菜單中的Export Wizzard導出一個平臺SDK,供在Embedded Visual C++或者Visual studio. Net中開發(fā)上層應用軟件使用。
D下載映像并脫機運行
通過CF網(wǎng)卡將Windows CE. net映像文件下載到Flash中,脫機按復位鍵,屏幕上顯示W(wǎng)indows CE. net的啟動畫面,說明Windows CE. net已成功運行。開發(fā)的上層應用軟件則可以通過PC 機上的ActiveSyn同步軟件下載到Flash中。
至此,基于Windows CE. net的智能信息終端的開發(fā)就已完成,通過開發(fā)過程可以看出,Windows CE. net操作系統(tǒng)及其開發(fā)工具給我們提供了很大的方便,大大縮短了產(chǎn)品研發(fā)的時間。
3 結語
本文介紹的基于Windows CE. Net的智能移動信息終端具有功能強、性能穩(wěn)定、功耗低等特點,適用于當前的高端移動信息產(chǎn)品,具有較好的應用前景。目前已成功應用于軍警用移動信息終端中。