android 下如何动态加载触摸屏驱动

android 下如何动态加载触摸屏驱动,第1张

TP驱动实现

1 修改ProjectConfig.mk

修改mediatek\config\prj\ProjectConfig.mk下的CUSTOM_KERNEL_TOUCHPANEL

其值由GT818B改为msg2133

2 增加ms2133驱动文件夹

根据TP厂家提供的驱动,我们在\mediatek\custom\common\kernel\touchpanel增加msg2133触摸屏驱动文件夹msg2133,并尘闷做下面一些简单修改正常使用。

(1) Msg2133接口的初始化

1) CHIP_EN片选使能引脚

mt_set_gpio_mode(GPIO_CTP_MSG2133_EN_PIN,GPIO_CTP_MSG2133_EN_PIN_M_GPIO)

mt_set_gpio_dir(GPIO_CTP_MSG2133_EN_PIN,GPIO_DIR_OUT)

mt_set_gpio_out(GPIO_CTP_MSG2133_EN_PIN,GPIO_OUT_ONE)</span>

msg2133芯片使能引脚配置为GPIO模式、输出高电平使能。

2) INT中断引脚

mt_set_gpio_mode(GPIO_CTP_MSG2133_EINT_PIN,GPIO_CTP_MSG2133_EINT_PIN_M_EINT)

mt_set_gpio_dir(GPIO_CTP_MSG2133_EINT_PIN,GPIO_DIR_IN)

mt_set_gpio_pull_enable(GPIO_CTP_MSG2133_EINT_PIN,GPIO_PULL_ENABLE)

mt_set_gpio_pull_select(GPIO_CTP_MSG2133_EINT_PIN,GPIO_PULL_UP)</span>

配置为中断模式、输入、使能上下拉功能和设置为上拉。

(2) IIC地址

Msg2133的iic读写地址,我从数据手册上没有找到是如何确定这两个地址的,驱动厂家在驱动代码中提供,如果想要具体是怎么确定的,可咨询厂家。

#defineFW_ADDR_MSG21XX (0xC4>>1)

#defineFW_ADDR_MSG21XX_TP (0x4C>>1)//write,0x26

#defineFW_UPDATE_ADDR_MSG21XX (0x92>>1)//read,0x49</span>

(3) 增加TP的虚拟按键(virtual key)

要在TP上增加虚拟按键,需要在tp对应的头文件添春兄羡加下扒拍面的设置:

1) 定义TPD_HAVE_BUTTON

2) 定义TPD_BUTTON_HEIGHT、TPD_KEY_COUNT、TPD_KEYS和TPD_KEYS_DIM,分别用于定义button被识别的纵向坐标、虚拟按键个数、对应的功能键和每个功能键的坐标

#defineTPD_HAVE_BUTTON

#defineTPD_BUTTON_HEIGHT 800

#defineTPD_KEY_COUNT 4

#defineTPD_KEYS { KEY_BACK, KEY_SEARCH,KEY_MENU, KEY_HOMEPAGE }

#define TPD_KEYS_DIM {{200,900,10,10},{260,900,10,10},{40,900,10,10},{120,900,10,10}}</span>

其中,{200,900,10,10}对应了KEY_BACK的坐标, (200,900)是该key center的坐标,10是该键的宽度,10是该键的高度。

3) 根据显示屏分辨率修改相关的宏定义

#defineTPD_RES_X 480 // (320)

#defineTPD_RES_Y 800 //(480)</span>

把常用的实体按键(导航按键)映射到触屏区域的快捷方式,不强制要求一定要有物理按键来支持用户 *** 作,这对开发全触摸屏的产品非常有利。

其实步哗备骤挺简单的,也不需要太多的技术,安装系统到输入用户名那个步骤时候,同时按下ctrl+shift+f3.重启以后打补丁装驱动激活等等你想要放到系统里的东西(记住那个系统准备工具不能关闭),然后清理C盘,好了之后,再看OOBE对话框(也就是系统准备工作3.14)中的“通用”选上,“关机”选上,最后“确定”,到这里封装前的准备工作完森猛成了,下来就是封装捕获镜像,工具:乱春毁imagex.exe 自己用记事本写一个cmd命令,"X:\Program Files\petools\imagex.exe" /compress maximum /check /scroll /capture D: E:\x86ult.wim "Windows 7 32位 旗舰版" "Windows 7 旗舰版"pause说明:"X:\Program Files\petools\imagex.exe"是指imagex.exe的路径,Program Files这个目录名称中有空格,所以要加个双引号两个东西放一起,非C盘。开机进入PE系统,运行那个CMD程序完成捕获镜像,得到insall,替换掉你的系统光盘中的就好了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/8030259.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存