当前位置:  技术问答>linux和unix

按键驱动移植 高手请进

    来源: 互联网  发布时间:2016-12-05

    本文导语:  我用的最新的工具链,内核是linux-2.6.33.fs2410开发板 s3c2410 的型号。 移植按键驱动是老师报错"IRQT_FALLING undeclared"和"SA_INTERRUPT underclared" 改加的头文件我都加了 ,还是不行。 |  * These correspond to the ...

我用的最新的工具链,内核是linux-2.6.33.fs2410开发板 s3c2410 的型号。
移植按键驱动是老师报错"IRQT_FALLING undeclared"和"SA_INTERRUPT underclared"
改加的头文件我都加了 ,还是不行。

|
 * These correspond to the IORESOURCE_IRQ_* defines in
 * linux/ioport.h to select the interrupt line behaviour.  When
 * requesting an interrupt without specifying a IRQF_TRIGGER, the
 * setting should be assumed to be "as already configured", which
 * may be as per machine or firmware initialisation.
 */
#define IRQF_TRIGGER_NONE 0x00000000
#define IRQF_TRIGGER_RISING 0x00000001
#define IRQF_TRIGGER_FALLING 0x00000002
#define IRQF_TRIGGER_HIGH 0x00000004
#define IRQF_TRIGGER_LOW 0x00000008
#define IRQF_TRIGGER_MASK (IRQF_TRIGGER_HIGH | IRQF_TRIGGER_LOW | 
 IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING)
#define IRQF_TRIGGER_PROBE 0x00000010

/*
 * These flags used only by the kernel as part of the
 * irq handling routines.
 *
 * IRQF_DISABLED - keep irqs disabled when calling the action handler
 * IRQF_SAMPLE_RANDOM - irq is used to feed the random generator
 * IRQF_SHARED - allow sharing the irq among several devices
 * IRQF_PROBE_SHARED - set by callers when they expect sharing mismatches to occur
 * IRQF_TIMER - Flag to mark this interrupt as timer interrupt
 * IRQF_PERCPU - Interrupt is per cpu
 * IRQF_NOBALANCING - Flag to exclude this interrupt from irq balancing
 * IRQF_IRQPOLL - Interrupt is used for polling (only the interrupt that is
 *                registered first in an shared interrupt is considered for
 *                performance reasons)
 * IRQF_ONESHOT - Interrupt is not reenabled after the hardirq handler finished.
 *                Used by threaded interrupts which need to keep the
 *                irq line disabled until the threaded handler has been run.
 * IRQF_NO_SUSPEND - Do not disable this IRQ during suspend
 *
 */
#define IRQF_DISABLED 0x00000020
#define IRQF_SAMPLE_RANDOM 0x00000040
#define IRQF_SHARED 0x00000080
#define IRQF_PROBE_SHARED 0x00000100
#define __IRQF_TIMER 0x00000200
#define IRQF_PERCPU 0x00000400
#define IRQF_NOBALANCING 0x00000800
#define IRQF_IRQPOLL 0x00001000
#define IRQF_ONESHOT 0x00002000
#define IRQF_NO_SUSPEND 0x00004000

#define IRQF_TIMER (__IRQF_TIMER | IRQF_NO_SUSPEND)


2.6.30 以后内核, 中断标志的定义已经改变, 你替换一下中断标志就行了。

|
名字一样吗?程序定义的设备号是255吗?

|

看下在/dev目录下面有没有button这个设备文件

|
我现在也在做按键驱动 5X5的 内核linux2.6.30.9。现在开始迷茫是用中断触发做驱动还是轮询做驱动?网上说的中断触发处理不好抖动的话容易联动,比较不清楚。有兴趣的我们可以讨论下。
QQ:599316704.

|

能用中断的话,当然首推中断方式了。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 我用getKeyTyped()得到当前按下的按键,想让不符合要求的按键忽略掉,像没按一样,不知怎么做
  • QT突然失去对按键的响应【求助】
  • 开发板按键不够怎么办
  • 请教qt creator中的鼠标按键事件
  • 关于按键
  • linux控制台程序如何检测有无按键?
  • 请问如何判断左右同时按键??
  • 关于一个键盘按键的一个小问题!
  • 急!!如果在程序中模拟一个键盘按键?
  • 在LINUX怎么得到按键编码呀
  • GtkClist 按一次确定键,为什么调用了两次按键回调函数?
  • LINUX中如何模拟鼠标和键盘的按键动作
  • solaris,不论是本地登陆还是远程登陆,键盘的上下左右按键均显示^[[X ,怎么设?
  • shell 模拟 按键
  • 谁在2410上做过QT,谁战斗怎么让QT程序响应按键的??
  • Solaris中如何设置让Backspace按键在命令行中起作用
  • 取按键问题
  • 请问在linux下怎么编程实现屏蔽系统按键啊
  • 请问如何得到一个窗口里面的文本和按键消息呢?
  • emacs 如何为不同 mode 绑定同一按键


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3