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