Android中字元裝置驅動和應用例項(一)——驅動部分
阿新 • • 發佈:2019-02-08
下面介紹建立Android裝置對應的字元裝置驅動
1 字元驅動
在此示例中,我們將字元驅動新增到drivers/char目錄下。
(1)字元驅動的路徑如下:
drivers/char/class_reg_unreg.c
(2)字元驅動的內容如下:
View Code2 修改配置
(1)修改drivers/char/Kconfig,新增以下內容:
config SKYWANG_CLASS_REG_UNREG tristate "skywang class register and unregister driver" help add this to support skywang class register and unregister driver
(2)修改drivers/char/Makefile,新增以下內容:
+obj-$(CONFIG_SKYWANG_CLASS_REG_UNREG) += class_reg_unreg.o
3 編譯
(1)執行make menuconfig生產字元裝置模組檔案,如下圖:
(2)執行make編譯生成模組檔案,模組檔案路徑如下:
drivers/char/ class_reg_unreg.ko
4 裝載/解除安裝到手機中
(1)將class_reg_unreg.ko匯入到Android系統中,執行以下命令:
# adb push class_reg_unreg.ko /system/class_reg_unreg.ko
(2)裝載模組檔案,執行以下命令:
# cd /system/ # insmod class_reg_unreg.ko
執行insmod之後,堅持是否生成檔案節點“/sys/class/my_char_dev”和“/dev/my_char_dev”。若生成檔案節點,則代表裝載驅動成功!
(3)若需要解除安裝模組檔案,可以通過以下命令:
#rmmod class_reg_unreg.ko