雖然公司在一年以前就開始做基于WinCE4.2系統的觸摸屏,但是作為側重應用層面開發的我,對WinCE核心相關知識可以說是一知半解。
WinCE6.0早在06年11月份就已經正式釋出,但直到今天才開始研究WinCE6.0系統(其實早幾個月的時候就從馬甯那裡獲得了PB6.0安裝程式,但是比較遺憾的是在前幾天才把PB6.0裝上)。WinCE6.0的100%開放源代碼行動還是比較吸引人的,此外又作為VS2005的插件出現,對喜歡VS005開發環境的朋友來說,着實是一個福音。
PB6.0安裝程式有3G多(SP1要小的多,才50多M),幸好我安裝時僅選擇了Arm平台相關的選項,否則真不知道要占用我多少磁盤空間呢!
閑言少叙,第一步我們就用PB6.0定制一個WinCE6.0核心。
(這方面的内容,幸好有馬甯同志不辭辛苦的耕耘,我們可以不勞而獲,直接看他blog上《Windows Embedded CE 6.0開發初體驗(1~5)》系列文章即可,不過要選擇的BSP是Device Emulator:ARMV4I,相關連結如下:
http://blog.csdn.net/aawolf/archive/2007/12/19/1953448.aspx)。
第二步就是我們今天要說的重點了,以前PB5.0和PB4.x都有一個基于X86架構的模拟器。在定制BSP時,需要選擇EMULATOR:X86定制的核心才能加載到模拟器之中。在PB6.0中在這一方面有了很大的改進,用“Device Emulator:ARMV4I”取代了“EMULATOR:X86”,也就是說現在的模拟器直接可以加載基于ARM平台的NK了,畢竟目前大部分嵌入式裝置都是基于ARM平台的,這種改進還是非常有益的。
模拟器需要從網上下載下傳,目前最新版本是V2.0。
Microsoft Device Emulator 2.0 – 獨立版
對基于 ARM 的裝置的裝置仿真程式來說,Microsoft Device Emulator 2.0 是第二個公開發行的版本。本仿真程式還将與 Windows Embedded CE 6.0 的 Adaptation Kit (AK) 版一同發行。
Device Emulator 2.0 版與 Visual Studio 2005 随附的該仿真程式的 1.0 版包含相同的可執行檔案和 DLL。新版的仿真程式對性能進行了更新并新增了一些功能。本次安裝将取代随 Visual Studio 2005 一同安裝的仿真程式。
注意:在 Visual Studio 2005 中進行面向 Windows Embedded CE 6.0 平台的應用程式開發時需要使用 Device Emulator V2.0。此外,如果您的系統運作的是 Windows Vista,也需要使用本仿真程式。
下載下傳連結如下:
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=dd567053-f231-4a64-a648-fea5e7061303安裝完模拟器後,接下來我們要配置一下相關選項:
單擊“Target”菜單下Connectivity Options選擇,彈出如下配置對話框

Download和Transport都選擇“Device Emulator(DMA)”選項,此外如果Debugger選None的話,記得在工程屬性中一定取消下圖中的選項,否則模拟器一直黑屏。
單擊配置對話框的“Setings”按鈕彈出仿真程式屬性配置對話框,如下圖。
分辨率我設定為640*480。
序列槽最好映射,并且勾選“為串行端口1建立…”選項,這樣在啟動模拟器的時候會彈出如下窗體,這樣在模拟器黑屏的時候你能獲知是什麼原因。
核心編譯完畢後,我們單擊“Target”菜單下的Attach Device選項,讓模拟器加載NK.bin。
呵呵,成功了!