MISC蜂鸣器驱动实验-迅为imx6ULL开发板编译驱动及运行测试

我们将 44.4 章节编写的驱动文件 beep.c 编译成模块,请参考本手册第三十九章 Linux 内核模块。我们
将 beep.c 文件拷贝到 Ubuntu 的/home/topeet/driver/imx6ull/beep 目录下,将上次编译 file_operation 的
Makefile 文件拷贝到 beep.c 同级目录下,修改 Makefile 为:
obj-m += beep.o #先写生成的中间文件的名字是什么,-m 的意思是把我们的驱动编译成模块
KDIR:=/home/topeet/driver/imx6ull/linux-imx-rel_imx_4.1.15_2.1.0_ga/
PWD?=$(shell pwd) #获取当前目录的变量
all:
make -C $(KDIR) M=$(PWD) modules #make 会进入内核源码的路径,然后把当前路径下的代码编译成模块
参考本手册第三十九章 Linux 内核模块,编译成功如下图所示:

驱动编译完,我们通过 nfs 将编译好的驱动程序加载模块,注意!nfs的配置和使用,请参考本手册 37.2.3

搭建 nfs 共享目录章节配置。

我们进入到共享目录,加载驱动模块如图所示:

cd /mnt/nfs

cd imx6ull/beep/

insmod beep.ko

现在我们将 46.3.4 章节编译好的 APP 拷贝到共享目录下,运行如下图所示:

输入命令“./app 1”打开蜂鸣器,蜂鸣器发出声音;输入命令“./app 0”关闭蜂鸣器,蜂鸣器停止发出声音。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章