Linux2.6.22.6驱动笔记
R1CHIE_L
这个作者很懒,什么都没留下…
展开
-
Linux驱动笔记开篇
学习了将近2个月的linux驱动我大概写了27个笔记文档,在本子上有将近40页的笔记,接下来将会花费一点时间来整理我的笔记,也算是复习之前的内容,笔记所有的实验是基于s3c2440 、linux2.6.22内核,可能笔记上会有错误,就像写代码一样,我只喜欢编译器来告诉我哪里出错,哈哈哈,所以欢迎大家纠错。...原创 2019-01-04 21:53:16 · 167 阅读 · 1 评论 -
1--linux字符设备驱动
编写一个简单的字符设备框架static int hello_init(void){ printfk("hello world!\n"); return 0;}原创 2019-01-05 13:51:07 · 212 阅读 · 3 评论 -
2---linux字符设备进阶篇
概要:上一篇我们编写了一个简单的驱动程序,似乎有点索然无味,其实我也是这样觉得的,所以这篇我们将加大力度。看了上一篇的字符设备似乎觉得很简单,事实不然。如何注册字符设备先来看几个函数:int register_chrdev_region(dev_t dev_id, unsigned count, const char *name)静态注册字符设备,自己指定主设备号。什么叫静态,就是...原创 2019-01-05 16:49:02 · 737 阅读 · 0 评论 -
3---linux字符设备之点亮led
概要:上一篇我们编写了一个非常简单的字符设备框架和一个我们自己写的fops,似乎还是感觉有点索然无味,因此这篇我们搞一个能在现实世界上出现的东西,就是led亮起来上一篇我们写了一个字符设备的框架,因此我们可以拿过来用:2—linux字符设备进阶篇1.查看2440原理图,随便找一个led,并找出它的gpio口接在哪里2.打开s3c2440的芯片手册找出这几个gpio口的配置寄存器我们根...原创 2019-01-05 19:20:33 · 436 阅读 · 0 评论 -
4---linux中断之按键查询
上一篇中我们用了简单的字符设备驱动来点亮led灯,这一篇我们来搞一搞中断。为了引入中断,我们先看一看这么一个程序******led.c******#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.原创 2019-01-05 20:54:15 · 429 阅读 · 1 评论 -
5---linux定时器消除按键抖动
概要:上一篇中我们用到了中断来读取按键电平,似乎很成功,然而当我们快速按下松开时,会有数据异常,是什么导致呢?按键抖动,在我们按下的时候按键可能会发生抖动,如图我们的中断是双边沿触发的,假如我们按键发生了抖动,那么就触发了五次中断,这对我们来说实际应用上来看。是非常不稳定的,我们有两种解决方法,一种是硬件消抖,虽然我懂一些硬件,但我不想拿自己的弱处来改进它。那么另一种就是是软件消抖,这一听就在...原创 2019-01-06 14:08:37 · 1624 阅读 · 2 评论