![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
arm-driver
有崖
这个作者很懒,什么都没留下…
展开
-
linux设备驱动(1)字符设备框架及操作
字符设备框架条件: 单板通过nfs挂载文件系统 框架包含几个方面(1)入口(module_init)(2)出口 (module_exit)(3)操作(open/close read/write ...) 主要实现file_operations里面定义的部分函数,这里先实现open/write代码如下:#include <linux/m...原创 2018-11-02 09:35:42 · 246 阅读 · 0 评论 -
linux设备驱动(2)使用udev自动创建设备节点
前面使用mknod来手动创建设备节点,显然这种方法效率低下, 这里使用udev机制来自动创建设备节点。首先定义static struct class *second_drv_cls;static struct class_device *second_drv_cls_dev;对应的头文件#include <linux/device.h> /* class_d...原创 2018-11-02 10:56:46 · 1231 阅读 · 0 评论 -
linux设备驱动(0)测试工具(比较通用)
下面使用getopt_long实现的基于命令行的驱动测试软件,比较通用,拓展性强使用如下:No device found Usage: driver_test_tool [Device] [cmd] [data] ...Options: -o --open open the device of offset, -c --close ...原创 2018-11-02 14:19:36 · 972 阅读 · 0 评论 -
linux设备驱动(3)字符驱动 -led
本文基于mini2440/** kernel : linux-2.6.22.6* gcc : arm-linux-gcc -3.4.5*/#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h...原创 2018-11-02 14:23:55 · 210 阅读 · 0 评论 -
linux设备驱动(3)字符驱动 -按键(查询法)
本文描述查询法。 所谓查询法,就是在应用程序里面执行while (1) { read(fd, key_vals, sizeof(key_vals)); ... }加载驱动并在后台执行应用程序时, 通过top可以看到CPU利用率,该应用进程占用99%。先看应用程序int main(int argc, char **argv){ int fd; uns...原创 2018-11-05 12:30:46 · 227 阅读 · 0 评论 -
linux设备驱动(3)字符驱动 -按键 四种写法总结
对于基础按键的驱动,有如下几种写法:(1)查询所谓查询方法,主要描述应用程序会在while(1)里面一直read,如果没有数据会导致阻塞,占用CPU;这种方法是最差的。 (2)中断中断配合休眠会避免查询法占用CPU的缺点。应用程序和查询法没有什么区别, 但是驱动里面的read函数会调用wait_event_interruptible, 直到按键产生中断并在中断里面唤醒,此时...原创 2018-11-05 12:43:03 · 526 阅读 · 0 评论 -
nand flash操作原理
1. nand flash原理图信号线只有LDATA[0:7],既发送命令,发送地址,还能读写数据。nand flash引脚定义:RnB : 状态信号nFCE : 片选信号CLE : 为高表示当前 LDATA上的数据是命令ALE : 为高表示当前LDATA上的数据是地址nFWE : 写nFRE : 读2.辨别NAND Flash每个nand flash里...原创 2019-03-19 10:42:31 · 1200 阅读 · 0 评论 -
tiny4412 驱动 (10)设备树之beep
重要参考文档:1.Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt2.Documentation/devicetree/bindings/gpio/gpio-samsung.txt3.Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt从原...原创 2019-07-12 21:26:49 · 335 阅读 · 0 评论