<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于Intel PXA270的WinCE操作系統(tǒng)移植

          基于Intel PXA270的WinCE操作系統(tǒng)移植

          作者: 時間:2009-12-18 來源:網(wǎng)絡 收藏

          選擇File->New Platform來開始一個“New Platform Wizard”,按照Platform Wizard 完成平臺的基本配置,在第三步選擇BSP包時,選擇 EMDOOR SYSTEMS XSBASE270:ARMV4I。因為我們開發(fā)用到的是億道公司提供的BSP包。在第四步選擇Internet Application ,第五步選擇組件時我們要選取 .net CF1.0支持,這是因為在使用.Net CF2.0時有些依賴的部件無法選擇,通過選擇.Net CF1.0支持就完成選擇了。

          完成向?qū)Ш螅诰幾g內(nèi)核鏡像前,需要在Catalog中添加一些我們需要的組件和配置整個平臺系統(tǒng)變量。在Catalog中點擊右鍵就可以添加組件到工程中??梢栽诓藛蜼iew/Catalog中打開Catalog窗口,將選用到的組件添加到系統(tǒng)中。

          針對本文中應用程序開發(fā)的需要,在EELiod 開發(fā)平臺上選用的系統(tǒng)配置方案為:

          (1)添加Usb Activesync (文件同步)

          (Catalog->Core -> Windows CE.net devices -> Applications - End User->ActiveSync->

          File Sync)

          (2)添加COM組件運行時加載支持

          (Catalog->Core -> Windows CE.net devices -> Applications and Services Development-> Component Object Mode-> COM-> CoCreateGuid functionality for OLE32)

          (3)添加USB Mass Storage

          (Catalog->Core -> Windows CE.net devices -> Core OS Services-> USB Host Support ->USB Storage Class Driver)

          (4)添加Fat File System

          (Catalog->Core OS -> Windows CE.net devices -> File Systems and Data Store -> Storage

          Manager-> FAT File System)

          (5)添加Disk Partition

          (Catalog->Core OS -> Windows CE.net devices -> File Systems and Data Store -> Storage

          Manager-> Partition Driver)

          (6)添加軟鍵盤

          (Catalog->Core OS -> Windows CE.net devices -> File Systems and Data Store -> Storage

          Manager-> Storage Manager Control Panel Applet)

          (7)添加USB Client 驅(qū)動

          (Catalog-> Device Drivers -> USB Function -> USB Function Clients -> Serial)

          (8)添加網(wǎng)卡驅(qū)動

          (Catalog-> Third Party-> BSPs -> Emdoor Systems XSBase270: ARMV4I -> Device Drivers

          -> Networking->Local Area Networking(LAN) devices->lan91c111)

          (9)添加Usb Activesync (USB Function).

          (Catalog-> Third Party-> BSPs -> Emdoor Systems XSBase270: ARMV4I -> Device Drivers

          -> USB Function->USB Function Bus Drivers->PXA27x USB Function)

          3.3.3編譯平臺

          在配置好后,下一步就是編譯,編譯過程分成4個階段:sysgen階段、特征編譯(feature build)階段、發(fā)行目錄拷貝(release copy)階段、映像生成(make image)階段。PB編譯工具先產(chǎn)生頭文件(header files )、成生模塊(modules ) ,再把每個最后得到的模塊拷貝到發(fā)行目錄下,最后產(chǎn)生二進制系統(tǒng)映像(默認為NK.bin)。在開始編譯前,需要通過Platform->Setting對話框來配置一些編譯選項,在該系統(tǒng)中所設置編譯選項如圖3所示。

          3.3.4 下載鏡像

          編譯整個平臺,待編譯成功后會在Release目錄($ FLATRELEASEDIR )下會找到一個Bootloader 鏡像文件eboot.nbo和系統(tǒng)鏡像文件NK.bin。在向目標板上下載系統(tǒng)鏡像文件之前,先要在目標板上下載BootLoader鏡像文件。下載BootLoader鏡像使用jflash工具。具體使用方法為將Eboot.nb0復制到jflash工具執(zhí)行文件所在的目錄,打開命令行,轉(zhuǎn)到Jflash目錄,執(zhí)行 Jflash pxa270 eboot.nb0 命令。

          Jflash 使用PC機的并口將eboot.nb0下載到開發(fā)板,上面命令中Pxa270是我們開發(fā)板上JTAG接口的相關(guān)配置信息。向目標板上下載系統(tǒng)鏡像的途徑有多種,如通過串口、并口、網(wǎng)卡、USB等。只要BootLoader PC機上支持,可以選擇效率高的一種來下載鏡像。本論文中我們用到的BootLoader程序Eboot支持網(wǎng)卡下載,使用Platform Builder自帶下載工具下載。下載配置如圖4所示:

          Target->Connectivity Options in Platform Builder.

          圖3 配置平臺編譯設置

          圖4 鏡像下載

          4.應用程序開發(fā)

          在Windows CE.net嵌入式上進行應用程序開發(fā)時,首先要考慮到一個問題:應用程序開發(fā)、調(diào)試和運行在不同的平臺之間進行的。所以我們在進行開發(fā)前,首先要導出一個針對該系統(tǒng)的開發(fā)工具包(SDK),這一步工作要在編譯完操作系統(tǒng)后完成。將編譯好

          的SDK安裝到開發(fā)的PC機上,就可以使用EVC進行應用程序開發(fā)了。圖5為在論文所定制和的操作系統(tǒng)上開發(fā)的兒童多媒體詞典的運行效果圖。

          圖5 兒童多媒體詞典的運行效果圖

          5.結(jié)束語

          嵌入式操作系統(tǒng)應用在千變?nèi)f化的硬件環(huán)境中,所以要根據(jù)硬件環(huán)境的變化進行配置,來滿足不同的應用要求。本文介紹了Windows CE.net在 過程,對于其他處理器硬件環(huán)境,同樣具有參考價值。

          本文作者創(chuàng)新點為解決了Windows CE.net在 過程中的重點和難點,對嵌入式系統(tǒng)開發(fā)具有參考價值。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();