android按键驱动开发实例1(修改一个按键)
--作者:赖玉平(Peter Lai)aulyp@163.com我们实际修改开发板上已有一个按键的功能来练习。要达到的效果:在开发板上的一个按键,做成数字“1”键,也就是在进到android后,对某个编辑框,按这个键,能输入数字“1”一、查数字键“1”对应的codelinux-2.6.36-android/include/linux/input.h#define KEY_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 |
我们使用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
更多推荐
所有评论(0)