跳到主要內容

發表文章

Windows Embedded 7 & 2013 Catalog 變動

從Windows Compact 7 轉移至 Windows Compact 2013 會發現在 Catalog Items View 工作選單尚有部分 Components 有稍微異動 , 部分元件被移除/改名/合併 或是新加入的元件 欲得知這些變動的元件清單可以參考下列網址 http://msdn.microsoft.com/en-us/library/jj919252.aspx

Windows Compact 2013 UI 元件

Windows Compact 2013 在這一版所加入的新元件或是升級元件中,對於UI 軟體設計人員最重要的莫過於 Gesture 手勢操作引擎的加入以及更多元化的 UI Theme/Overlapping Menus  與 Touch Screen 功能的支援, 以及更新架構的 XAML for windows embedded元件, 透過 Windows Compact 2013 開發更符合現代潮流與人性化的UI資訊工作站與POS系統 有興趣的人可以與我聯絡, 我可以提供更進一步的 UI設計資訊

Windows CE 5.0 環境變數與目前目錄問題

在某次的Windows CE 教育訓練課程裡面被問到的一個問題,或許其他初學者也會遇到相同問題,就在格子內順便貼文供大家參考. Windows CE 開發人員在使用C語言開發軟體的時候要特別注意,當開啟文件的時候,文件的的路徑不能使用環境變數,也無法使用 . 符號代表目前目錄, 當開啟文件不指明完整路徑時,Windows CE 會從 \Windows 目錄以及跟目錄兩處搜尋,若找不到該文件則會產生系統錯誤訊息, 並不會從目前目錄搜尋指定文件, 若依需求需要尋找目前程式執行時期的所在目錄,可以透過 GetModuleFileName() 函數取得目前目錄後再串接該份文件作為開啟文件的完整路徑表示 例如: dwAbsPath = GetModuleFileName( NULL , szBuffer , MAX_BUFF_LEN); while( szBuffer[--dwAbsPath] != '\\')   ; szBuffer[dwAbsPath+1] = NULL; _tcscat(szBuffer , TEXT("MyDoc.doc");

使用Hyper-V Client 安裝 Compact 2013 Image

Windows Compact 2013內針對 PC-Based 模擬開發環境需求的開發人員提供了CEPC BSP與 Hyper-v/Virtual PC Client 的 CE Loader ,image 開發人員 將建置完成的 Compact 2013 image 透過網路bootp直接下載到 Hyper-V client 啟動,大致方法如下: 0. 提供 Hyper-V 服務的主機事先於 Hyper-V Manager 建立 Virtual Network Switch ( External ) 1. 透過 Hyper-V / Virtual PC 建立新的 虛擬機器 2. 使用 Compact 2013 所提供的 Virtal Hard Disk ( Wince800\platform\cepc\vm\hd0_sample.vhd 3. 啟動後便可透過內建的 EBoot  Loader 使用 Bootp 尋找開發主機上的 Image Bootp server 下載開發完成的 image 啟動 啟動 Hyper-V Client 使用Bootp 連結至開發端機器下載 nk.bin VS 2012 Platform Builder attach device 偵測到遠端 HyperV Client Bootp message後自動發送 image(nk.bin)   下載完畢,nk.bin 啟動後出現compact 2013畫面

Windows CE XIP

上課學員提問  何謂  eXecute In Place ( XIP ) Windows CE 對於記憶體的定義與一般桌上型 Windows OS 稍有不同, Windows CE Memory 泛指所有 RAM, ROM , FLASH 都屬於 Windows CE 作業系統的記憶體 在一般的設計上 若 image 採用壓縮方式儲存在ROM/FLASH內,執行時期則必須先透過解壓縮到RAM的記憶體區塊才能執行, 後續為了提供更多的可用記憶體,Windows CE支援XIP機制,ROM/Flash內的 image 採不壓縮方式寫入, 當應用程式需要執行時, 若 ROM/Flash支援 隨機存取與線性存取的話, 因為image 沒有壓縮, Process便可直接於儲存的空間內執行,無須透過重新載入 RAM記憶體區塊內執行,因而節省較多的RAM空間供系統與使用者使用 但一般的ROM/FLASH執行速度相較於RAM來說執行速度將較為緩慢,因此也造成系統的效能可能有下降的風險,因此XIP設計上普遍針對成本導向的一般消費產品應用較多,對於需要高效能或 real-time 相關的產品 比較少看到 XIP 的設計應用.
NK.BIN 形成的主要參數儲存在OSDesign專案中的bib配置檔內 其中主要有四個設定區塊 MEMORY CONFIG MODULES FILES 其中與NK.BIN形成最主要的設定是MEMORY與CONFIG 兩個區塊的配置 MEMORY區塊: 主要是配製NK.BIN於記憶體中的安排方式 格式如下: NAME(區塊名稱) Address(記憶體位置) Size Type 其中Type:宣告常見有下面型態:   FIXUPVAR: 該記憶體區快可以透過參數調整   NANDIMAGE: 標示該記憶體區快可以使用 NAND Flash 存放   RAM : 該記憶體區塊需使用ram 存放   RAMIMAGE: 標示該記憶體區段可以使用RAM或NOR Flash存放   RESERVED: 標示該記憶體區段為保留區塊 CONFIG 區塊: 提供附加選項 AUTOSIZE: 自動配置runtime所使用的記憶體 PROFILE: 提供Runtime的效能取樣功能 BOOTJUMP: 指定系統啟動的指令進入點 COMPRESSON: 指定nk.bin是否壓縮 KERNELFIXUPS: 指示核心是否需重新記憶體定位動作 RAMFLAGS: 設定核心運作時的特殊屬性 ROMSTART: 指定nk.bin ROM的起始位址 ROMWIDTH: 指定nk.bin ROM的位元寬度(8/16/32)與檔案數量 ROMSIZE: 指定ROM的大小