android按键驱动开发实例1(修改一个按键)

--作者:赖玉平(Peter Lai)aulyp@163.com

我们实际修改开发板上已有一个按键的功能来练习。

要达到的效果:在开发板上的一个按键,做成数字“1”键,也就是在进到android后,对某个编辑框,按这个键,能输入数字“1”

一、查数字键“1”对应的code

linux-2.6.36-android/include/linux/input.h

#define KEY_1            2
#define KEY_2            3
#define KEY_3            4
#define KEY_4            5
#define KEY_5            6
#define KEY_6            7
#define KEY_7            8
#define KEY_8            9
#define KEY_9            10
#define KEY_0            11

二、硬件连接


按键

K1

K2

K4

K4

K5

K6

K7

K8

对应的中断

EINT0

EINT1

EINT2

EINT3

EINT4

EINT5

EINT19

EINT20

可复用为GPIO

GPN0

GPN1

GPN2

GPN3

GPN4

GPN5

GPL11

GPL12

clip_image002

我们使用K4 来做为数字键“1” 对应GPIO是GPN2

按下为低电平!

三、驱动中修改代码

1、按键定义

Linux-2.6.36-android/arch/arm/mach-s3c64xx/Mach-mini6410.c文件

static struct gpio_keys_button gpio_buttons[] = {
……
, {
        .gpio        = S3C64XX_GPN(2),
        .code        = 2,
        .desc        = "KEY _1",
        .active_low    = 1,
        .wakeup        = 0,
    }
}

到这一步,已经成功地把开发板上右向键(DPAD_RIGHT)改为数字键“1”了

可以编译内核,烧录到开发板去看效果


要学好嵌入式,还是建议买一个开发板,这样学习来会更快!

推荐下面4款,你可以根据你的经济能力来选一个


1、高级嵌入式开发板 ARM-A8内核,价格在2200~2700
X-210开发板(代码开放度高,XBOOT很牛)   
Mini210开发板 (友善的板子,有沉淀)

2、入门级嵌入式开发板 ARM11内核  ,价格在500~650之间
Tiny6410    (友善之臂经典之作)     
OK6410    (特点是支持WINCE7.0)

可以去风火轮团队的店里看一下,在他们那里买开发板有个好处,他们提供更周到的技术支持

风火轮技术开发团队  www.arm-cn.com

官方淘宝店:smartfire.taobao.com


csdn签名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值