![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JZ2440驱动
JZ2440开发板Linux设备驱动学习
李嘉图Y
凡是过往,皆为序章
展开
-
字符设备驱动之输入子系统按键驱动
注:代码都有完整的注释,方便阅读开发环境: ubuntu18.04平台: JZ2440kernel: Linux-3.4.2交叉编译工具: arm-linux-gcc-4.4.3驱动代码如下:#include <linux/version.h>#include <linux/init.h>#include <linux/fs.h>#include <linux/interrupt.h>#include <linux/irq.h>原创 2021-01-26 22:35:17 · 1302 阅读 · 0 评论 -
字符设备驱动之内核定时器防抖
注:代码有完整的注释,方便阅读开发环境: ubuntu18.04平台: JZ2440kernel: Linux-3.4.2交叉编译工具: arm-linux-gcc-4.4.3驱动程序如下:#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/dela原创 2021-01-26 22:31:34 · 1241 阅读 · 0 评论 -
字符设备驱动之同步互斥阻塞
注:代码有完整的注释,方便阅读开发环境: ubuntu18.04平台: JZ2440kernel: Linux-3.4.2交叉编译工具: arm-linux-gcc-4.4.3驱动程序如下:#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/dela原创 2021-01-26 22:29:56 · 1248 阅读 · 0 评论 -
字符设备驱动之异步通知
注:代码有完整的注释,方便阅读开发环境: ubuntu18.04平台: JZ2440kernel: Linux-3.4.2交叉编译工具: arm-linux-gcc-4.4.3驱动程序如下:#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/dela原创 2021-01-26 22:29:30 · 1253 阅读 · 0 评论 -
字符设备驱动之poll机制
注:代码都有完整的注释,方便阅读开发环境: ubuntu18.04平台: JZ2440kernel: Linux-3.4.2交叉编译工具: arm-linux-gcc-4.4.3驱动程序如下#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/dela原创 2021-01-26 22:28:28 · 1277 阅读 · 0 评论 -
字符设备驱动之中断方式的按键驱动
注:代码都有完整的注释,方便阅读驱动程序如下:#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <asm/uaccess.h>#include <asm/irq.h>#include <asm/io.原创 2021-01-26 22:27:24 · 1291 阅读 · 0 评论 -
字符设备驱动之查询方式的按键驱动
驱动程序如下:#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <asm/uaccess.h>#include <asm/irq.h>#include <asm/io.h>#include &l原创 2021-01-26 22:22:39 · 1306 阅读 · 0 评论 -
字符设备驱动之LED驱动
本次使用register_chrdev_region来注册设备号驱动代码如下:#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <asm/uaccess.h>#include <asm/irq.h>#inc原创 2021-01-26 22:19:47 · 1389 阅读 · 0 评论 -
驱动名、设备名和设备文件名的关系
编写一个驱动文件的时候生成一个name1.ko文件,这个name1就是驱动名,使用insmod name1.ko指令之后,用lsmod能看见一个名为name1的驱动在调用了alloc_chrdev_region函数或register_chrdev_region函数时传入的最后一个参数为设备名,如果传入的为name2,则表示该设备名为name2,使用cat /proc/devices指令可以看到该设备名使用mknod指令指定的文件名为设备文件名,该名字为使用open函数时打开的文件设备节点被创建在/de原创 2020-08-10 22:18:30 · 2104 阅读 · 2 评论