1. 簡介
- [專欄總目錄]
- 本文是基于RK3588平臺(tái), 電容觸控芯片GT9XX觸摸調(diào)試總結(jié)。
- 觸摸芯片:電容觸控芯片GT9271
- 驅(qū)動(dòng)代碼:"kerneldriversinput ouchscreengt9xxgt9xx.c"(驅(qū)動(dòng)用的是系統(tǒng)自帶的驅(qū)動(dòng)代碼)
2. 電容觸控芯片GT9XX觸摸調(diào)試
2.1 調(diào)試總覽,調(diào)試步驟分析
- 步驟 ① 先將gt9xx驅(qū)動(dòng)添加進(jìn)SDK編譯規(guī)則
- 步驟 ② dts配置
- 步驟 ③ 觸摸編譯燒寫,調(diào)試
2.2 調(diào)試過程
- 步驟 ① :將gt9xx驅(qū)動(dòng)添加進(jìn)kernel編譯規(guī)則
一.在Makefile添加:`obj-$(CONFIG_TOUCHSCREEN_GT9XX) += gt9xx/` Makefile所在路徑:"kerneldriversinput ouchscreenMakefile" 二.在Kconfig添加:`config TOUCHSCREEN_GT9XX的說明 Kconfig所在路徑:"kerneldriversinput ouchscreenKconfig" 三. 在 rockchip_defconfig中添加:CONFIG_TOUCHSCREEN_GT9XX=y
- 步驟 ② dts配置
&i2c6 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = < &i2c6m0_xfer >; clock-frequency = < 400000 >; gt9xx: gt9xx@14 { status = "okay"; compatible = "goodix,gt9xx"; reg = < 0x14 >; pinctrl-names = "default"; pinctrl-0 = < >9xx_gpio >; touch-gpio = < &gpio0 RK_PD3 IRQ_TYPE_LEVEL_HIGH >; reset-gpio = < &gpio0 RK_PC6 GPIO_ACTIVE_HIGH >; max-x = < 1200 >; max-y = < 1920 >; tp-size = < 89 >; tp-supply = < &vcc_lcd_mipi1 >; configfile-num = < 1 >; }; };
- 步驟 ③ 觸摸編譯燒寫,調(diào)試
2.3 調(diào)試問題總結(jié)
-
當(dāng)觸摸點(diǎn)與屏幕響應(yīng)點(diǎn)相反時(shí):在gt9xx.c驅(qū)動(dòng)源文件里修改:
方法一:根據(jù)觸摸反饋調(diào)整下面值:
if (val == 89) { m89or101 = TRUE; gtp_change_x2y = TRUE; //X,Y軸互換 gtp_x_reverse = TRUE; //X軸反向 gtp_y_reverse = FALSE; //Y軸反向 }
方法二:或者在事件上報(bào)函數(shù)里修改:
input_report_abs(ts- >input_dev, ABS_MT_POSITION_X, ts- >abs_x_max-x); input_report_abs(ts- >input_dev, ABS_MT_POSITION_Y, ts- >abs_y_max-y);
-
觸摸不太精準(zhǔn),位置偏下一點(diǎn)點(diǎn)。
解決辦法:更換GT9271_Config_20170526.cfg文件的配置。
系統(tǒng)自帶的cfg文件有點(diǎn)偏差,找屏幕廠商更換1200 * 1920的cfg文件
審核編輯 黃宇
-
SDK
+關(guān)注
關(guān)注
3文章
1020瀏覽量
45697 -
觸控芯片
+關(guān)注
關(guān)注
2文章
67瀏覽量
21624 -
Rockchip
+關(guān)注
關(guān)注
0文章
72瀏覽量
18516 -
電容觸控芯片
+關(guān)注
關(guān)注
0文章
6瀏覽量
776 -
RK3588
+關(guān)注
關(guān)注
6文章
303瀏覽量
4148
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
評(píng)論