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 |
我们使用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
更多相关文章
- 了解Android(安卓)WebView
- android键盘输入读取
- Android通信方式篇(四)-Binder机制(开篇)
- android 触屏反馈原理
- Android-沉浸式布局的玩法
- android按键静音键功能实现
- android自定义menu,PopUpWindow弹出菜单
- Android(安卓)8/9高通平台客制化虚拟导航按键隐藏
- Android中对标准内核的按键映射以及按键驱动