跳到主要內容

發表文章

目前顯示的是有「Windows CE」標籤的文章

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設計資訊

使用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的大小

WEC 7 之記憶體太多怎麼辦之介紹--OEMRAMTable

WEC7 與 CE6 使用同樣的 Kernel memory mapped 512MB , 所以若製造商的記憶體RAM > 512MB的時候, 就必須要修改 OAL 的Kernel Space mapping了 , 原本的 512MB 仍然使用  OEMAddressTable 去mapping,多出來的部分就要修改 OEMRAMTable / OEMDeviceTable 去對應給系統知道了 微軟提供最簡單的練習方式可以參考 CEPC 所附帶的BSP ,有興趣的童鞋 可以參考一下 \WINCE700\platform\common\src\x86\COMMON\startup\newtable 內所定義的 OEMRAMTable 與 OEMDeviceTable 內容 OEMAddressTable 加入 CE_NEW_MAPPING_TABLE 宣告系統有額外超出512MB記憶體 OEMRamTable 宣告  base_address , Size 與 memory type ( Cached ) OEMDeviceTable : 定義採用uncached 方式的記憶體存取模式,將記憶體對應至外部周邊設備

WEC7 之 compositor之 Alpha Blending

Windows embedded compact 7 的新功能Compositor支援 Alpha blending, 蝦蜜西  Alpha Blending呢? 所謂的 Alpha blending 在 Windows UI 介面中即是所稱的 Compositing, 在 UI 控制向中使用 Opacity 代表此項設定, Alpha 的值越大,代表越不透明, 視窗中常發生兩個視窗局部重疊再一起,當上層視窗的 alpha 值小於 1並趨近於零的時候,後方視窗的pixel 變會從底層透出來, Windows Embedded Compact 7 所宣稱的妞非糗有所謂的 Compositor 支援 alpha blending 簡單來說就是,WEC 7的視窗效果也可以支援跟WIN 7 一樣有透明視窗 的意思, 也增加了 transparent regions 支援 frame / over-impose 的視窗重疊更新機制,有效加速視窗處理效果

Windows CE 必備工具--DiskPrep

Windows CE image 建置完畢欲部署到裝置上執行之前,前置工作就是提供一個可開機的環境讓nk.bin能順利載入,Windows ce device上面 無論是使用 Hard Disk , USB Flash , CF 任何bootable storage都能透過 DiskPrep.exe 工具在 Storage Devices上面製作 Biosloader 提供 image 安裝與執行的能力 載點如下 http://archive.msdn.microsoft.com/DiskPrep

Windows Embedded Compact 7 特色

WEC 7 相較於 Windows Embedded CE 6的功能特色增加如下: 1. 支援 Multicore-Processor 2. 支援最多3GB實體記憶體 (  CE 6.0 支援實體記憶體為 512MB ) 3. 支援 DLNA(Digital Living Network Alliance) 4. 採用 silverlight 作為UI介面整合設計,提供較佳的介面設計環境 5. 提供更好的 觸控與手勢操作判別功能 6. 提供新版 Microsoft Office元件以及PDF瀏覽元件 7. 內建 Flash 10.1 轉譯元件( 無須額外授權費用 ) 8. 支援 MTP 9. 新版 IE for embedded ( 以 IE7為基礎,加上IE8 強化效能特徵) 10.提供強化版的 遠端除錯工具,讓開發時期的除錯更容易使用 11.提供 Windows Embedded Compact test kit 取代 6.0時期的 CETK工具 以上簡單列出 WEC 7.0 相較於 CE 6 的新特色供參考  

Windows Embedded Compact 7 所支援的 Codecs

1 BMP Yes 2 G.711 u & G.711a Yes 3 G.722.1 & SIREN Yes 4 GIF Yes 5 GSM610 Yes 6 ICO Yes 7 IMA ADPCM Yes 8 JPG Yes 9 MP3 decode (OEMs do not need a license from Thomson/Fraunhofer) Yes 10 MPEG1 video codec Yes 11 MPEG2 demultiplexer Yes 12 MPEG2 PS demultiplexer Yes 13 MPEG4 simple profile partial codec (included in WMV lib) Yes 14 MS ADPCM Yes 15 PNG Yes 16 SBC (SubBand Codec) which is part of the A2DP spec for Bluetooth No 17 TIFF No 18 VC-1 Decoder Yes 19 WMA Lossless Decoder Yes 20 WMA Professional Decoder Yes 21 WMA Standard Decoder Yes 22 WMA Voice Decoder Yes 23 WMV7 and WMV8 Decoder Yes 24 WMV9 Decoder Yes 25 WMV9 Encoder Yes 26 MPEG-4 Demultiplexer Yes 27 ASF Video and Audio Yes 28 AVI Yes

Books: Windows embedded Compact 7

Professional Windows Embedded Compact 7 Compact 7 書籍: 有興趣研究 WEC7的同學可以買來看看 ,不過內容架構跟前一版 Professional Windows CE 6 差不多, 大同小異,只有增加一部分 WEC 7的東西

Windows CE 桌面隱藏 API

在Win CE 程式開發中最常用到的一項功能就是隱藏桌面元件的需求 特將此功能列出讓大家參考 使用下列 API 可以管理 Windows Mobile桌面的呈現方式 BOOL SHFullScreen ( HWND hwndRequester, DWORD dwState ); dwState 可以變更桌面/工作列的呈現方式 <><><> SHFS_SHOWTASKBAR 將 Taskbar 以 Topmost 方式呈現 SHFS_HIDETASKBAR 隱藏 Taskbar <><><> SHFS_SHOWSIPBUTTON 顯示 Input Panel SHFS_HIDESIPBUTTON 隱藏 Input Panel SHFS_SHOWSTARTICON 顯示 Start 圖示 SHFS_HIDESTARTICON 隱藏 Start 圖示

Windows System Programming 第四版

開發 windows / CE / XP  system application / Device Driver 必看的書籍 第四版

製作 Win CE X86 Boot Loader

在安裝有 Windows CE Platform builder 6.0的機器上,開啟左列列目錄 ,並執行 MakeImageDisk.exe 軟體 選取 CEPCBoot.144 檔案並準備一片 1.44M磁片後按開始即可制作標準 CEPC X86 Boot Loader(MS-DOS)

Windows Embedded CE 6.0 Fundamentals

Windows CE 6.0的初學者可以看的入門書籍,裡面介紹了進入 Windows CE 6.0開發的必要與基本的知識 書籍資料: Publisher: Microsoft Pr (July 9, 2008) ASIN: B001JHUSSW ISBN-10: 0-7356-2625-1 USD: $39.99 PAGE: 253

Windows Embedded Automotive-- Microsoft Auto 4.1

Microsoft AUTO產品是除了眾所周知的 Windows Mobile之外另外一個從 Windows CE 延伸而出的產品,但是瞭解此產品的人比較少,因為目前此項產品的觸角尚未如 Mobile phone一樣深入深入到每一個人的生活當中,但是趨勢的發展再過個幾年 想必Microsoft AUTO 產品一定也會如目前的 Windows Mobile一樣受到矚目,目前最新的版本是 4.1版(源自於 Windows Embedded CE 6.0 R3) 簡單來說,Microsoft AUTO是微軟針對車用電子市場所開發的一個專屬的汽車作業系統,透過此套作業系統可以讓車用電子系統廠商可以快速開發車用人機介面,透過微軟作業系統所提供的元件,讓汽車製造商可以快速開發出一套整合通訊、娛樂、導航與資訊提供的車用系統,降低資訊系統整合到汽車的研發時程與研發成本,簡單來說 透過此套 Windows AUTO 產品,汽車製造商可以利用產品所提供的基礎功能,例如: 資料來源: Microsoft 汽車製造商經由評估目前市場上所提供的車用嵌入式系統所需要的開發人才與時間成本比較之下,進而挑選出最最適合開發車用系統的基礎產品,相信以Microsoft在開發領域所累積的人才庫來說,對廠商在挑選一套適合的開發環境來說相對占了不少的優勢,所以各位有興趣開發embedded系統的人,Windows CE 或許應該列為你學習的選項之一

Window CE BootLoader for x86 ( MS-DOS )

CEPC X86採用了幾種開機方式,其中一種運用MS-DOS當成Booting OS 利用 Windows CE Platform builder所提供的 Image disk 製作一片 1.44M的開機片,內有提供 LoadCepc.exe命令作為 CE Boot Loader 不過首先得先將磁片的開機檔案移植到嵌入式設備的CF / FLASH / DISK 上 以下提供傳統的MS-DOS開機系統製作方式供學員參考 : 使用MS-DOS開機片開機後, 透過 Fdisk.exe與 Format.com 工具製作 Windows CE Boot Loader 過程如下 圖一: MS-DOS開機 圖2: 開機後,載入 Fdisk執行 Partition切割工作 圖3: 選擇第一項,建立 Partition 圖4: 選擇第一項,建立 DOS Partition 圖5: 詢問是否全部切割成單一PARTITION,若CF過大可回答 N 自行切割大小 圖6: 輸入欲切割的Partition大小 圖7:切割後,按一下鍵盤的 esc鍵回到檢視畫面,就可看到所切割的Partition大小 圖8: esc回到主選單後,在選擇 [2] 設定啟動磁區 圖9: 選擇欲啟動作業系統的Partition 圖10: 選擇後應該會看到 Partition清單上的 Status欄位出現 A 字元 圖11: 切割後 重新啟動系統 圖12: 格式化所切割的新磁區 圖13: 格式化完成後 便可將 Platform Builder所製作的 Windows CE Bootloader磁片內容複製到C:內 重新開機後,進入c:> 輸入 C:>Loadcepc /L:800x600x16 nk.bin 便可載入nk.bin到記憶體 並且以800x600的解析度執行 windows ce 作業系統