a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于S3C2410的Windows CE 5.0 BSP移植

基于S3C2410的Windows CE 5.0 BSP移植

作者: 時間:2012-04-13 來源:網絡 收藏

⑶ 實現OEMInit(),該函數將調用以下函數:OALCacheGlobalsInit(),OALIntrInit(),OALTimerInit(),OALKitlStart()來初始化Cache Global,中斷,時鐘,啟動KITL,實現代碼如下:
void OEMInit()
{
OALCacheGlobalsInit();// 初試化cache globals
if (!OALIntrInit()) {
OALMSG(OAL_ERROR, (
LERROR: OEMInit: failed to initialize interruptsrn
));
} // 初試化中斷
OALTimerInit(1, X_PCLK/2000, 0); // 初始化時鐘
OALKitlStart();// 初始化KITL
}

⑷ 實現OALTimerInit(),該函數用于初始化OS TIMER,設置每毫秒產生一個System tick,為系統計數,觸發進程調度。由CPU的運行主頻和硬件定時器資源來確定,執行過程有:初始化時鐘狀態全局變量,初始化高分辨率時鐘函數指針,使能TIMER。

⑸ 實現中斷處理處理函數:OALIntrInit(),該函數通常先初始化中斷映射表,因為WIN為了模塊化,把平臺相關物理中斷號和系統中斷號建立映射。然后清除外部中斷,內部中斷等。

3.3 驅動

以觸摸屏為例,來探討 系統驅動程序。這里以三星公司ARM9內核芯片觸摸屏接口為基礎,通過外接4線電阻式觸摸屏構成硬件基礎,整個觸摸屏由橫向電阻線和縱向電阻線組成。觸摸屏驅動的主要函數組成有:

TSP_Poweron 該函數將執行觸摸屏的一些初始化,主要是寄存器的配置。

DdsiTouchPanelEnable:使能DDSI接口,使得硬件能將流數據提供給DDSI接口,就可以實現觸摸的操作了。

DdsiTouchPanelSetMode:模式設置函數,設置觸摸屏是高采樣率還是低采樣率

DdsiTouchPanelGetPoint :觸摸屏進行采樣函數

TSP_CalibrationPointGet:坐標轉換函數,該函數實現將從AD采樣植轉換成坐標。

主要過程:

⑴ 修改source文件,要添加如下庫文件:
TARGETLIBS=$(_COMMONSDKROOT)lib$(_CPUINDPATH)coredll.lib
SOURLIBS=
$(_COMMONOAKROOT)lib$(_CPUINDPATH)tch_cal.lib
$(_COMMONOAKROOT)lib$(_CPUINDPATH)tchmdd.lib

因為這個驅動在 CE 4.2下面是在Public目錄,而這里將該觸摸屏移到了Platform下面,在 CE4.2下面是沒有以上三條鏈接庫,但Platform,Public編譯路徑,先決條件都不同。因此引用的庫不一樣。

⑵ 刪除如下庫文件:
$(_TARGETPLATROOT)lib$(_CPUINDPATH)drvlib.lib

該庫在Windows CE 4.2系統下為觸摸屏與音頻共用庫,但在Windows CE系統下,這個庫已經不是必要的并且已經不存在了,所以刪除掉,否則系統會出編譯錯誤。

⑶修改platform.bib,將我們移植過來的驅動dll包含到nk.bin中

⑷修改platform.reg,其中CalibrationData是觸摸屏的一個參數:
[HKEY_LOCAL_MACHINEHARDWAREDEVICEMAPTOUCH]
MaxCalError=dword:7
portrait
CalibrationData=517,610 897,934 142,936 129,290 891,285

其他驅動的過程與觸摸屏類似。



評論


相關推薦

技術專區

關閉