linux ir驅動學習筆記

2022-06-05 22:06:12 字數 1557 閱讀 7824

ir(infrared remote)紅外協議協議主要有rec、rc5/rc6、sony等。

**路徑:/drivers/media/rc

keymaps是一些rc_map_table的按鍵對映,每個遙控器都不一樣。

ir模組整體框架如下

進行裝置讀取資訊操作時,物件是/dev/input/eventx,原因是ir屬於input子系統。

編譯配置

make menuconfig

選擇如下,選擇編碼方式和具體的驅動裝置。

event事件結構如下

struct

input_event ;

測試**如下

1 #include 2 #include 3 #include 

4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13

14#define device_name "power button"

1516

/*get the path of the input device

*/17

int get_event_num(char *path_name)

1830

if (strcmp(dev_name, device_name) == 0

) 35}36

close(fd);

3738

return0;

39}4041

/*get key events of input device

*/42

int keyscan(char *path)43;

4849 key_fd =open(path, o_rdonly);

50if(key_fd < 0)51

55 printf("

---open device success!---\n");

5657

while(1)58

68}69}

70close(key_fd);

71return

ret;72}

7374

int main(int arg, char *arc)

75

檢視具體的ir裝置命令如下

安卓命令

dumpsys input

參考:

學習筆記 驅動

驅動 廣義 這一段 操作了硬體驅動,所以這一段 就叫硬體的驅動程式。本質上是電力提供了動力,而驅動程式提供了操作邏輯方法 狹義 驅動程式就是專指作業系統中用來操控硬體的邏輯方法部分 微核心和單核心 1 單核心 又稱單核心 將核心從整體上作為乙個大過程實現,並同時執行在乙個單獨的位址空間。所有的核心服...

驅動學習筆記 irp

irp是windows核心中的一種非常重要的資料結構。上層應用程式與底層驅動程式通訊時,應用程式會發出i o請求,作業系統將相應的i o請求轉換成相應的irp,不同的irp會根據型別被分派到不同的派遣例程中進行處理。irp相當於ring3下的訊息,應用程式對驅動程式進行操作的時候會發出相應的訊息,驅...

驅動學習筆記 Hello World !

編譯環境用xp下vc6 ddk 新建乙個資料夾當作工程目錄,路徑是e lingdux 從別的工程copy過來兩個檔案,乙個是makefile,它用來指定檔案之間的依賴關係,確定專案中哪些檔案時需要重新編譯的,那些事已經編譯過的。裡面的內容不用改,直接預設就ok 另乙個是source,它用來儲存一些配...