原创 WinCE OAL中的Cache操作函數介紹

作者:ARM-WinCE   在OAL中有兩個和Cache相關的函數,一個是OEMARMCacheMode,另一個是OEMCacheRangeFlush函數,這兩個函數在ARM處理器上是必須實現的。   OEMARMCacheMode函數

原创 WinCE CEDDK之地址映射函數

作者:ARM-WinCE   在CEDDK中提供了用於地址映射的函數,在CEDDK/ddk_map/ddk_map.c中。該模塊中主要提供了兩個函數用於物理地址到虛擬地址的映射與取消映射:   1. PVOID MmMapIoSpace(

原创 WinCE OAL中的Startup.s介紹

作者:ARM-WinCE   應該說Startup.s是OAL最開始的入口,就像EBOOT中的Startup.s一樣,它也是WinCE內核最開始運行的代碼。一般在BSP中,EBOOT的Startup.s和OAL的Startup.s的功能應

原创 WinCE桌面牆紙及圖標更換

作者:ARM-WinCE   網上關於WinCE更換牆紙的文章一大堆,我也來寫一篇,和網上已有的文章沒什麼區別。以前寫的WinCE Blog大部分都是BSP相關的,以後打算寫點WinCE系統定製方面的,就從這裏開始吧。   關於WinCE

原创 WinCE OAL的系統Timer分析

作者:ARM-WinCE   對於任何操作系統來說,系統Timer就像是OS的心臟,本質來說,操作系統就是中斷驅動的。在WinCE中,系統Timer會在OAL中實現,一般在OEMInit函數中進行初始化,而且都是在Interrupt初始化

原创 淺談ARM裸板調試

 作者:ARM-WinCE   我所說的ARM裸板調試是指ARM的PCB板製作完後,貼片回來的板子,不但沒有任何程序,上電都是第一次。之所以寫一篇blog,是因爲最近調試了一塊ARM板,基於S3C6410的,但是我們把原來的M-DDR D

原创 WinCE OAL中的中斷處理

作者:ARM-WinCE   關於WinCE的中斷處理,OAL中主要是實現了ISR部分,一般IST會在設備驅動中實現。推薦一篇WinCE的中斷架構的文章,如下: http://msdn.microsoft.com/zh-cn/libra

原创 WinCE OAL中的電源管理函數

作者:ARM-WinCE     在WinCE OAL中的電源管理主要由OEMIdle和OEMPowerOff兩個函數實現。應該說OEMIdle實現的是處理器級的電源管理,而OEMPowerOff實現的是板級的電源管理。 在WinCE系統

原创 WinCE OAL中的RAM定製函數

作者:ARM-WinCE   在WinCE系統中,Kernel是如何使用內存的,如何知道內存的大小?是通過config.bib文件的描述,我們會在config.bib文件中MEMORY段定義WinCE內核所佔用RAM的起始地址和大小,比如

原创 S3C6410處理器介紹

 作者:ARM-WinCE   S3C64xx系列的應用處理器芯片是三星主推的,三星目前推出了S3C6400和S3C6410,都是基於ARM11架構的,而且硬件管腳兼容,應該說大致的功能基本相同,比較明顯的區別就是S3C6410帶有2D/

原创 WinCE OAL中的OEMInit函數

作者:ARM-WinCE OEMInit是OAL中的重要函數,用來初始化板級的硬件設備。實際上,WinCE的內核最開始只做了CPU級的初始化,隨後會初始化調試串口,然後就會調用該函數了。 應該說OAL中的OEMInit函數有點像EBOO

原创 WinCE OAL中的Memory函數介紹

作者:ARM-WinCE   在BSP開發中經常會用到物理地址與虛擬地址的轉換,一般都是基於物理地址獲得相應的虛擬地址來訪問硬件。在WinCE6.0中,可以在WINCE600/Platform/Common/Src/Inc/Oal_mem

原创 WinCE OAL中的Profiler的實現

作者:ARM-WinCE   OAL中的Profiler的實現是指Monte Carlo Profiler,作爲WinCE Kernel profiler的一種,它主要是通過高精度Timer的中斷來進行週期性的計數,從而統計各函數的sam

原创 Linux下運行OProfile進行系統性能分析

作者:ARM-WinCE   具體內容開始之前,先說點緣由。我不用WinCE已經很久了,呵呵,目前公司的項目都是基於Linux/Android,所以也開始在Linux上面做開發。我在接觸WinCE之前就做Linux驅動,後來改做WinCE

原创 WinCE Subproject使用介紹

作者:ARM-WinCE   在Platform Builder創建一個WinCE的工程,然後在”Solution Explorer”窗口中可以看到”Subprojects”項,主要用於在以有的WinCE工程中創建一些簡單的應用程序工程