<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團論壇Linux專區(qū)Linux驅(qū)動開發(fā) → 基于嵌入式Linux的矩陣鍵盤驅(qū)動程序研究與開發(fā)


      共有7408人關(guān)注過本帖樹形打印

    主題:基于嵌入式Linux的矩陣鍵盤驅(qū)動程序研究與開發(fā)

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發(fā)短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    基于嵌入式Linux的矩陣鍵盤驅(qū)動程序研究與開發(fā)  發(fā)帖心情 Post By:2010-11-24 9:35:07

      另外,鍵盤又屬于輸入設(shè)備,Linux內(nèi)核提供了輸入子系統(tǒng),如鍵盤、觸摸屏、鼠標等輸入設(shè)備都可以利用輸入子系統(tǒng)的接口函數(shù)來實現(xiàn)設(shè)備驅(qū)動[4]。輸入子系統(tǒng)由核心層(Input Core)、驅(qū)動層和事件處理層(Event Handler)三部分組成[9]。在Linux內(nèi)核中,使用輸入子系統(tǒng)實現(xiàn)輸入設(shè)備驅(qū)動的時候,驅(qū)動的核心工作是向系統(tǒng)報告按鍵、觸摸屏、鼠標等輸入事件,而不再需要關(guān)心文件操作接口,因為輸入子系統(tǒng)已經(jīng)完成了文件操作接口。通過輸入子系統(tǒng),實現(xiàn)輸入設(shè)備驅(qū)動時只需要完成以下工作:

      (1)在模塊加載函數(shù)中告知輸入子系統(tǒng)輸入設(shè)備可以報告的事件。例如,可通過__set_bit(EV_KEY,input_dev->evbit)來告知輸入子系統(tǒng)該設(shè)備可報告按鍵事件。

      (2)在模塊加載函數(shù)中注冊輸入設(shè)備。注冊函數(shù)為:int input_register_device(struct input_dev *dev);

      (3)當有輸入事件發(fā)生時,如按鍵按下/抬起、觸摸屏被觸摸/抬起/移動時,通過input_report_xxx()報告發(fā)生的事件及對應(yīng)的鍵值、坐標等狀態(tài)。主要的事件類型包括EV_KEY(按鍵事件)、EV_REL(相對值,如鼠標移動,報告相對于最后一次位置的偏移)和EV_ABS(絕對值,如觸摸屏)。


    支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

    返回版面帖子列表

    基于嵌入式Linux的矩陣鍵盤驅(qū)動程序研究與開發(fā)








    簽名