A40i通过TWI1驱动GT911触摸屏
之前使用USB免驱板,驱动GOODIX的GT911触摸IC,后续发现系统不是特别兼容,在多指滑动屏幕几次后,屏幕就失灵了, 软件是正常运行的,重新插拔USB就恢复正常,此问题实在无从下手解决,瞎鼓捣了几天也没搞明白一二,后来直接去掉免驱板,使用TWI总线直接驱动,看飞凌手册,默认配置是使用TWI3驱动gt911,但奈何引脚都被占用,所以更换TWI1和其他RST与INT引脚。本文也是分享一下配置方式,提供各位需要的朋友,少走弯路,修改sys_config文件要注意TWI的id是否选择,TWI是否使能
twi1_used = 1
twi1_scl = port:PB18<2><default><default><default>
twi1_sda = port:PB19<2><default><default><default>
;----------------------------------------------------------------------------------
;capacitor tp configuration电容触摸
;external int function
;wakeup output function
;notice --- tp_int_port &tp_io_port use the same port
;compatible 设备名字
;ctp_used 是否使用
;ctp_name 用作区别gd系列,适配屏幕分辨率
;ctp_twi_id 用作选择iic的adapter,可选1,2
;ctp_twi_addr 指明iic设备地址,与硬件相关
;ctp_screen_max_x 触摸板x最大坐标
;ctp_screen_max_y 触摸板y最大坐标
;ctp_touch_panel_max_x
;ctp_touch_panel_max_y
;ctp_revert_x_flag是否需要反转x坐标,需要置1,反之置0
;ctp_revert_y_flag是否需要反转y坐标,需要置1,反之置0
;ctp_exchange_x_y_flag是否需要xy坐标对换
;ctp_power_ldo 触摸屏电源配置
;ctp_power_ldo_vol触摸屏电压配置
;ctp_int_port 电容屏中断信号GPIO配置
;ctp_wakeup 电容屏唤醒信号GPIO配置
;----------------------------------------------------------------------------------
compatible = "allwinner,sun50i-ctp-para"
ctp_used = 1
ctp_name = "gt9xx_ts"
ctp_twi_id = 1
ctp_twi_addr = 0x14
ctp_screen_max_x = 800
ctp_screen_max_y = 480
ctp_touch_panel_max_x= 800
ctp_touch_panel_max_y= 480
ctp_revert_x_flag = 0
ctp_revert_y_flag = 0
ctp_exchange_x_y_flag = 0
ctp_power_ldo = "vcc-ctp"
ctp_power_ldo_vol = 3300
ctp_int_port = port:PH02<6><default><default><default>
ctp_wakeup = port:PH05<1><default><default><0>
;----------------------------------------------------------------------------------
;compatible配置名称
;ctp_list_used 支持触摸屏list
;ft5x_ts 是否支持ft5x_ts模组
;gt82x 同上
;gt9xx_ts 同上
;gt9xxnew_ts 同上
;gt811 同上
;zet622x 同上
;aw5306_ts 同上
;----------------------------------------------------------------------------------
compatible = "allwinner,sun50i-ctp-list"
ctp_list_used = 1
ft5x_ts = 1
gt82x = 1
gt9xx_ts = 1
gt9xxnew_ts = 1
gt811 = 1
zet622x = 1
aw5306_ts = 1我之前就是这两个总是差一个条件,最坑的是我把TWI1的引脚模式改了, 后来恢复才发现好使,置于xy方向镜像都是小问题, 修改对应反向即可。
在就是看一下系统中是否编译了GT9xx的触摸驱动,是否自动加载了,官方默认源码好像是没有打开,需要修改sun8iw11p1smp_oka40i_c_defconfig文件
将CONFIG_TOUCHSCREEN_GT9XXNEW_TS=y设置y,y就是开机自动加载,m就是编译出ko文件,需要人工手动加载。
最后,放上我修改的相关文件在附件中。祝大家一次成功。
页:
[1]