<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于S3C2440的WindML圖形驅動(dòng)設計

基于S3C2440的WindML圖形驅動(dòng)設計

作者: 時(shí)間:2010-10-19 來(lái)源:網(wǎng)絡(luò ) 收藏

WindML通過(guò)事件機制完成對鍵盤(pán)輸入的響應。它采用客戶(hù)/服務(wù)器模式,其事件驅動(dòng)的原理如圖4所示。
WindML輸入驅動(dòng)是一個(gè)分層結構,包括一個(gè)底層的驅動(dòng),負責處理設備控制器和一個(gè)高層的驅動(dòng),還負責翻譯從設備中接收到的原始數據。
底層輸入驅動(dòng)是作為I/O驅動(dòng)來(lái)開(kāi)發(fā)的,一般構建進(jìn)入系統內核,底層驅動(dòng)在初始化時(shí)就會(huì )被連接到操作系統的I/O系統中。底層驅動(dòng)負責完成以下功能:
初始化設備控制器和輸入設備;
處理由設備控制器產(chǎn)生的中斷;
從輸入設備中接收原始數據,把它們按序地排列在I/O系統的高端驅動(dòng)隊列中;
接收高層驅動(dòng)的指令并做出相應的反應,如控制鍵盤(pán)上LED的亮滅。
此外,底層輸入驅動(dòng)必須支持輸入服務(wù)任務(wù)用于檢測輸入數據的Select()機制。
高層輸入驅動(dòng)主要負責接收來(lái)自低層輸入驅動(dòng)的原始數據,處理這些數據,封裝數據成為一個(gè)輸入事件消息以及把這些消息放到消息隊列中。在實(shí)現時(shí)需要完成以下例程:
(1)驅動(dòng)打開(kāi)例程。分配并初始化驅動(dòng)控制結構,打開(kāi)底層輸入驅動(dòng),設置底層驅動(dòng)到合適模式,以及當成功打開(kāi)驅動(dòng)后返回一個(gè)指向驅動(dòng)結構的指針。
函數原型如下:

驅動(dòng)打開(kāi)例程有兩個(gè)參數,第一個(gè)參數是用于接收原始輸入數據,被驅動(dòng)打開(kāi)的底層輸入驅動(dòng)的名字;第二個(gè)參數是一個(gè)指向輸入驅動(dòng)結構(UGL_INPUT_DEV)的指針。
(2)驅動(dòng)控制例程。
函數原型如下:

該函數有3個(gè)參數:第一個(gè)參數是由驅動(dòng)打開(kāi)例程創(chuàng )建和初始化的驅動(dòng)控制結構;第二個(gè)參數是請求的類(lèi)型;第三個(gè)參數依賴(lài)于第二個(gè)參數的請求類(lèi)型。
(3)開(kāi)發(fā)驅動(dòng)關(guān)閉例程。該函數負責完成關(guān)閉底層輸入驅動(dòng),釋放由打開(kāi)例程分配的系統資源以及設置底層設備回到它操作之前的原始狀態(tài)。
最后需實(shí)現I2C總線(xiàn)接口驅動(dòng),將底端輸入驅動(dòng)及高端輸入驅動(dòng)連接起來(lái),完成鍵盤(pán)驅動(dòng)程序的編寫(xiě)。
圖5所示是WindML繪圖的一個(gè)例子。圖中創(chuàng )建了2個(gè)窗口,左邊的窗口通過(guò)鍵盤(pán)可以控制小球的運動(dòng),右邊窗口可以在其中輸入文字。

本文引用地址:http://dyxdggzs.com/article/151420.htm



4 結語(yǔ)
本文對嵌入式實(shí)時(shí)操作系統VxWorks的媒體庫windML及其圖形界面開(kāi)發(fā)的方法做了詳細的介紹,上面提到的圖形界面開(kāi)發(fā)的方法已經(jīng)被作者成功地應用于實(shí)際工程開(kāi)發(fā),并取得了良好的效果。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 音頻

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>