资源预览内容
第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
亲,该文档总共4页全部预览完了,如果喜欢就下载吧!
资源描述
轨迹球文档v0.01一 轨迹球原理介绍轨迹球结构原理如下图示图1轨迹球是通过外部机械运动使H1, H2, H3, H4四个霍尔元件产生电磁感应,从而改变P1-P4的电压输出状态。根据“霍尔效应”在霍尔元件中的应用以电磁转换来实现人机交互。有关“霍尔效应”和“霍尔元件”请参考http:/baike.baidu.com/view/614188.htm?fr=ala0_1二 轨迹球内部结构及注意事项轨迹球内部结构如下图示图2如上图示,轨迹球输出端口为push-poll。三 接口结构图图3目前RK手机方案采用基于TCA6424扩展IO芯片实现轨迹球与RK2808的状态交互。当TCA6424轨迹球的在up、down、left、right和enter五个方向上有动作则发送中断到RK2808通知轨迹球有操作,之后RK2808通过I2C接口读取TCA6424端口状态寄存器得到状态改变的端口号。注意:轨迹球button键无需处理毛刺,但需要外界上拉电阻到Vcc,不能处于float状态。四 软件流程Kernel/arch/arm/mach-rockchips/Rk28_devices.c中添加platform设备。Kernel/arch/arm/mach-rockchips/rk28_devices.c注册platform。Kernel/drivers/input/Kconfig文件添加下一级Kconfig文件路径。Kernel/drivers/input/Makefile添加.o文件路径。添加文件夹Kernel/drivers/input/mobile_jogball添加源文件Kernel/drivers/input/mobile_jogball/jogball.cJogball.c宏定义说明#defineTWO_DIREC_SUPPORT/支持两个方向处理#defineJOGBALL_SCAN_INTVAL40/轨迹球动作扫描,单位ms#define ROLLUP 103/上滚动键值#define ROLLDOWN 108/下滚动键值#define ROLLLEFT 105/左滚动键值#define ROLLRIGHT 106/右滚动键值#define ROLLENT 28 /垂直按下键值#define JOG_UP_PORTExtend_GpioPort0_Pin1/轨迹球上滚动对应IO定义#define JOG_DOWN_PORTExtend_GpioPort0_Pin2/轨迹球下滚动对应IO定义#define JOG_LEFT_PORTExtend_GpioPort0_Pin4/轨迹球左滚动对应IO定义#define JOG_RIGHT_PORTExtend_GpioPort0_Pin3/轨迹球右滚动对应IO定义#define JOG_ENTER_PORTExtend_GpioPort0_Pin5/轨迹球垂直按下对应IO定义轨迹球设备结构体说明struct rock28_jogball struct rock28_keypad_platform_data *pdata;struct hrtimer timer;/轨迹球状态扫描hrtimer句柄struct input_dev *input_dev;/input设备指针unsigned char jogball_codes5;/轨迹球五个方向键值unsigned char codes_bak2;/前一次按键状态备份unsigned long noop_cnt;/无操作计数unsigned long debonce;/预留祛抖标志volatile unsigned long inv_dir4;/水平方向上四个方向操作计数volatile unsigned long inv_ent;/垂直方向上操作计数;软件流程示意图如下图示:图4文档整理人:刘洋邮箱:liuyrock-chips.com
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号