mtk6582平台GT9157触摸屏驱动移植

news/2024/11/29 9:36:57/
一.GT9157触摸屏移植
1.在mediatek/config/sanstar82_cwet_kk/ProjectConfig.mk中
CUSTOM_KERNEL_TOUCHPANEL=GT9XX   (将GT9XX驱动加载到内核中)


2.在mediatek/custom/sanstar82_cwet_kk/kernel/touchpanel/GT9XX/tpd_custom_gt9xx.h中修改固件
(1)在有厂商固件的情况下
将提供的固件代码在替换到#define CTP_GROUP1{}中


(2)如果在没有厂商的固件情况下,提供一种思路
-GT9157编程指南文件_20141023(TCL).pdf文档中有对GT9XX系列的寄存器描述
-GT9XX驱动移植说明书_for_Android_2014011401.pdf有对GT9XX系列移植说明
-android中开发者模式中"显示触摸操作"和"指纹位置"辅助调试
得到以下信息:
固件信息描述:
第2位0x74(低位),第3位0x03(高位) 0x0374代表分辨率的横屏(x)
第4位0x78(低位),第5位0x06(高位) 0x0678代表分辨率的竖屏(y)
由于没有拿到触摸屏模组厂商的固件信息,故调整了分辨率以调整触摸(非正常手段)
正常情况下分辨率为720x1280,但是由于固件中很多对一些寄存器的值不知道怎么设置
导致按照720x1280的参数设置的触摸值,实际会存在偏差,故需一点点调整


#define CTP_GROUP1{\
0x00,0x74,0x03,0x78,0x06,0x0A,0x05,0x01,0x01,0x08,0x28,0x05,0x50,0x32,\
0x03,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x8C,\
0x2E,0x0E,0x1B,0x19,0xF4,0x0A,0x00,0x00,0x02,0xBA,0x04,0x1D,0x00,0x00,\
0x00,0x00,0x00,0x03,0x64,0x32,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,\
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x38,0x5F,0x00,0xF7,0x4A,0x3A,0xFF,\
0xFF,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
0x02,0x04,0x06,0x08,0x0A,0x0C,0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,0x1C,\
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
0x00,0x00,0x00,0x02,0x04,0x06,0x08,0x0A,0x0C,0x0F,0x10,0x12,0x13,0x14,\
0x16,0x18,0x1C,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x24,0x26,0x28,0x29,0x2A,\
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
0x00,0x00,0x3A,0x01\
}


二.调整虚拟按键:
KEY_BACK :返回键
KEY_HOME :home键
KEY_MENU :显示后台应用键
第一中:3个按键
#define TPD_KEY_COUNT   3   //3个虚拟按键
#define key_1           300,1350  //第一个虚拟按键位置       //auto define  
#define key_2           400,1350  //第二个虚拟按键位置
#define key_3           600,1350  //第三个虚拟按键位置


#define TPD_KEYS        {KEY_BACK, KEY_HOME, KEY_MENU}            
#define TPD_KEYS_DIM    {{key_1,120,100},{key_2,120,100},{key_3,120,100}} 
120,100代表虚拟按键的宽和高




http://www.ppmy.cn/news/563791.html

相关文章

前端vue经典面试题78道(重点详细简洁)

目录 1.自我介绍 2.vue面试题 1.v-show和v-if区别的区别: 2.为何v-for要用key 3.描述vue组件声明周期mm 单组件声明周期图 ​父子组件生命周期图 4.vue组件如何通信 5.描述组件渲染和更新的过程 1、vue 组件初次渲染过程 2、vue 组件更新过程 6.双向数据…

MATLAB2020a报错:函数或变量 ‘svmtrain‘ 无法识别。

版权声明:转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/108594259 遇到问题,上网搜索,折腾许久,悬而未决。 遇到这个错误的原因是&…

vscode——HTML基本标签A标签超级链接

什么是超级链接&#xff1a; 1通过超级连接建立链接的关系——>从一个页面跳转另一个页面——>a标签是成对出现的——<a></a>有开始有结束——>a标签不加属性&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta c…

gt9xx驱动分析笔记

# evtest /dev/event0 或者 # hexdump /dev/event0 // 分析&#xff1a; \drivers\i2c\busses\I2c-digicolor.c static struct platform_driver i2c_dc_driver { .probe i2c_dc_probe, .remove __exit_p(i2c_dc_remove), .driver { .name "i2c-digicolor", .o…

ctfshow 文件包含 web 78 -117

目录 web 78web 79web 80web 81web 82-86(环境暂时做不了)web 87web 88web 116web 117 web 78 data://text/plain,<?php system("cat flag.php");?> php://filter/convert.base64-encode/resourceflag.php web 79 filedata://text/plain;base64,PD9waHAgc…

正点原子Linux 触摸芯片改成GT911后的驱动修改(单点和多点触摸)

目录 单点触摸设备树修改编译设备树和驱动模块并运行运行测试 多点触摸 野火的Linux的触摸芯片就是用的GT911,如果用GT911替换原来正点原子的FT5x06或者GT9147,需要做一些修改。 单点触摸 在正点原子的触摸芯片软件历程里有GT9147的代码&#xff0c;基于此代码修改即可 注意正…

记一次移植GT9271无法正常通信

移植汇顶的TP GT9271时&#xff0c;发现i2c通信不上&#xff0c;检查了TP的供电和复位脚及硬件连接&#xff0c;都没发现问题&#xff0c;然后发现内核有如下的报错信息。 [49533.829164] gpio-272 (goodix_ts_int): _gpiod_direction_output_raw: tried to set a GPIO tied t…

stm32驱动GT-U7 GPS

文章目录 STM32驱动GT-U7 GPS模块一些参数用户手册过程问题代码 STM32驱动GT-U7 GPS模块 淘宝链接&#xff1a;GT-U7 GPS 一些参数 可到淘宝链接上查看。&#xff08;因为放的是图片&#xff0c;审核时认为是广告&#xff09; 用户手册 4&#xff0c;$GPRMC&#xff08;推…