6 4輸入系統 模擬輸入系統驅動

2021-09-29 17:50:48 字數 684 閱讀 2062

那麼應用層怎麼知道哪個才是他需要的呢?在dev/input下存在多個裝置節點,每個裝置節點都有對應的驅動,應用層只需要確定他想要的節點即可。一般來說dev/input/event0,2,3…是原始資料,沒有加工的,如果想先獲得處理過的資料,例如滑鼠,我們可以open(ev/input/monsedev)找安卓中只使用了event.c。

我們硬體驅動需要做的相關工作:根據硬體狀態上報資料(原始資料),如果是乙個滑鼠,我們可以先上報給monsedev,然後進行處理之後,monsedev再繼續上報。一般編寫流程如下:

1.分配/構造input_device結構體

2.註冊:input_register_device(成功時通過connect找ev/input下會建立event節點)

3.有輸入事件產生時,中斷上報,input_event(dev,type,code,value)

下面我們怎麼寫出模擬驅動呢?步驟基本和上面一樣,只是我們不在操作硬體,上報的時間是我們自己定義的事件。通過另外乙個應用程式寫進去的,那麼為什麼可以這樣呢?

找andriod中,有乙個可以直接當做第三個人的應用程式,我們看看如何使用,開啟我麼你的開發板,進入andriod系統之後,執行:

sendevent

我們可以到列印資訊

use: sendevent device type code value

這個就是該程式的使用方法。

linux裝置驅動 輸入子系統

輸入裝置都能用輸入子系統來寫,比如說按鍵 觸控螢幕 滑鼠等,但是有的輸入裝置不止用到了輸入子系統,比如說usb輸入裝置,他們還用到了usb子系統。我們以最簡單的按鍵 直接接到cpu上 為例介紹一下輸入子系統。輸入子系統將硬體相關的 與軟體相關的 分開寫,目的是為了以後編寫修改 簡便。軟體部分系統已經...

linux驅動之輸入子系統

輸入子系統框架,把核心開啟 搜尋input.c 輸入子系統的 在 driver input目錄下面 最上一層,我們稱它為核心層 要看乙個驅動程式我們應該從他的入口函式開始看 有一行 err register chrdev region mkdev input major,0 input max ch...

linux驅動 Input 輸入子系統

1,哪些驅動裝置使用驅動子系統更方便簡單?像按鍵,觸控螢幕,滑鼠等輸入裝置我們可以採用input介面函式來實現裝置驅動,那麼採用input輸入子系統有什麼優點?其實一句話,採用input輸入子系統可以使驅動程式變得異常簡單。2,input輸入子系統的體系結構 主要包括三大體系結構 裝置驅動層driv...