设为首页 加入收藏

TOP

TQ2440按键点亮LED驱动程序(三)
2014-11-23 19:49:11 来源: 作者: 【 】 浏览:84
Tags:TQ2440 按键 点亮 LED 驱动程序
的close方法,close方法的主要职责:释放系统的中断,如果申请的中断没有释放会占用系统的中断资源,导致某些程序无法运行,比如我一开始由于中断的释放这里没有处理好,导致的问题是当我将驱动模块加载进系统内核,然后运行我的驱动测试程序,这些都没有问题,但是当我关掉测试程序再次运行时,本人发现测试程序打不开设备了,不能运行了,提示错误设备正忙,原因就是系统的中断资源没有及时释放。


4.定义设备的read方法,read方法的主要职责是:当我上层应用程序需要读我的设备的时候,当我设备没有数据可读的时候,这个时候该如何处理的问题。


5.定义设备的poll方法,poll设备方法负责完成:


①使用poll_wait将等待队列添加到poll_table中。


②返回描述设备是否可读或可写的掩码。


位掩码:


POLLIN 设备可读


POLLRDNORM 数据可读


POLLOUT 设备可写


POLLWRNORM 数据可写


设备可读通常返回 (POLLIN|POLLRDNORM)


设备可写通常返回 (POLLOUT|POLLWRNORM)


6.定义ioctl方法,这个设备方法不做解释,不懂的话请看我前面写的那篇TQ2440LED驱动程序的文章。


7.定义file_operations 。file_operations结构中的每一个成员的名字都对应着一个上层应用程序的调用。


8.定义模块加载函数:这里需要特别说明的是,我们要在驱动模块加载函数里面要加入熄灭4盏LED灯的代码,以便等下测试的时候能够很好的看到按键点亮LED灯的效果。


9.定义模块卸载函数:略。


首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇STL之pair类型详细分析 下一篇STL之iterator(迭代器)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: