GT911触摸移植

百度网站


文章目录

  • GT911触摸移植
  • 一、添加gt911库文件
  • 二、添加设备树文件
    • 修改文件路径 :arch/arm/boot/dts/suniv-f1c100s.dtsi
    • 修改文件路径 :arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts
    • 编译烧录
  • 三、添加ts-lib触摸测试软件
  • 参考

一、添加gt911库文件

在 drivers/input/touchscreen 路径下添加gt911.c文件

修改Makefile 添加gt911.c的文件编译 drivers/input/touchscreen/Makefile 添加obj-y += gt911.o

二、添加设备树文件

修改文件路径 :arch/arm/boot/dts/suniv-f1c100s.dtsi

添加I2C属性定义 到soc节点下

i2c0: i2c@1C27000 {compatible = "allwinner,sun6i-a31-i2c";reg = <0x01C27000 0x400>;interrupts = <7>;clocks = <&ccu CLK_BUS_I2C0>;resets = <&ccu RST_BUS_I2C0>;pinctrl-names = "default";pinctrl-0 = <&i2c0_pins>;status = "disabled";#address-cells = <1>;#size-cells = <0>;
};

添加I2C引脚定义 到pio节点下

i2c0_pins: i2c0 {pins = "PD0", "PD12";function = "i2c0";
};

修改LCD的引脚定义,因为有两个脚被I2C占用了

lcd_rgb666_pins: lcd-rgb666-pins {pins = "PD1", "PD2", "PD3", "PD4","PD5", "PD6", "PD7", "PD8", "PD9","PD10", "PD11", "PD13", "PD14","PD15", "PD16", "PD17", "PD18", "PD19","PD20", "PD21";function = "lcd";
};

修改文件路径 :arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts

添加头文件

#include <dt-bindings/input/input.h>
#include <dt-bindings/interrupt-controller/irq.h>

添加gt911设备树配置

&i2c0 {pinctrl-0 = <&i2c0_pins>;pinctrl-names = "default";status = "okay";/*  触摸 */gt911:gt911@5d {compatible = "goodix,gt911","goodix,gt9xx";reg = <0x5d>;pinctrl-names = "default";interrupt-parent = <&pio>;interrupts = <4 12 IRQ_TYPE_EDGE_FALLING>; irq-gpio = <&pio 4 12 GPIO_ACTIVE_HIGH>; rst-gpio = <&pio 0 0 GPIO_ACTIVE_HIGH>; status = "okay";};
};

编译烧录

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j12

编译文件放到SD卡的boot分区之后开机,可看到驱动已经挂上。

ls /dev/input/

cat proc/interrupts

三、添加ts-lib触摸测试软件

触摸驱动移植成功后需要判断是否可用,可以用ts-lib 这个软件直观的测试触摸驱动

buildroot配置安装ts-lib软件

make menuconfig

打开ts-lib功能 位置:Target packages > Libraries > Hardware handling > tslib


编译软件

make -j12


编译完成 烧录根目录文件系统后启动开发板,在 /usr/bin 路径下会发现多了很多可执行文件


接下来要设置tslib的配置文件

打开 /etc/ts.conf 文件 查看是否有 module_raw input 如果被注解解开注解 如果没有自己添加一句


打开/etc/profile 文件,在里面加入如下内容:

export TSLIB_TSDEVICE=/dev/input/event0     #触摸驱动文件路径
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf         #触摸配置文件路径
export TSLIB_PLUGINDIR=/usr/lib/ts         #触摸库文件路径   input.so 文件的所在路径
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0                 #软件显示在那个fb上

具体配置方法可参考tslib移植小问题这篇博客

保存后重启开发板,输入ts_test启动测试软件,可以直观的测试触摸情况了。

参考

https://blog.csdn.net/Ternence_zq/article/details/109778136
链接

全志F1c100s主线linux入坑记录 (4)GT911触摸移植相关推荐

  1. 全志F1C100s主线linux入坑记录 (6)音视频播放(视频播放软解)

    音视频播放(视频播放软解) 百度网站 文章目录 音视频播放(视频播放软解) 一.音频播放 1.声卡驱移动植入 (1)下载安装声卡补丁 (2)配置声卡 (3)linux内核编译烧录 (4)使用声卡 二. ...

  2. 全志F1C100s主线linux入坑记录 (1)linux系统移植

    linux系统移植 (基于SD卡启动) 百度网站 文章目录 linux系统移植 (基于SD卡启动) 一.安装gcc交叉编译器 二.Uboot移植 1.下载Uboot 源码 2.配置Uboot 3.编译 ...

  3. 全志F1C100s主线linux入坑记录 (3)适配其他分辨率的LCD

    适配其他分辨率的LCD 百度网站 文章目录 适配其他分辨率的LCD 一.修改U-boot屏幕参数 二.修改linux内核文件 三.测试效果 一.修改U-boot屏幕参数 修改对应屏幕的参数(我这里是1 ...

  4. 全志F1C100s主线linux入坑记录 (10)调试串口更改

    调试串口更改 百度网站 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 调试串口更改 前言 uboot 修改 一.修改设备树 二.修改文件 3. 修改内核传递参数 内核修改 ...

  5. 全志F1C100s主线linux入坑记录 (7)GBA模拟器移植

    GBA模拟器移植 百度网站 文章目录 GBA模拟器移植 一.下载gpsp 源代碼 二.gpsp环境配置 参考 一.下载gpsp 源代碼 gpsp源码 解压文件 7z x gpsp.7z 二.gpsp环 ...

  6. 米大师服务端接入坑记录

    米大师服务端接入坑记录 近期因为项目需要接入应用宝的米大师支付,在接入中遇到一些坑,这里记录以下,以便方便需要的朋友参考. 主要是以下几个需要注意的问题: 文档混乱,腾讯应用开放平台和米大师支付等地方 ...

  7. Lichee Zero 荔枝派 零 入坑记录

    Lichee Zero 荔枝派 零 入坑记录 参考官方网站 http://zero.lichee.pro buildroot-2019.08-rc1 busybox-1.31.0 重编译 修改gett ...

  8. 3D建模入坑记录——挑选3D建模软件

    背景 最近手痒,想搞一些小手工.盘点了一下,电路板什么的都有,工具也第一时间下单买了台锯和手钻.但是有些支架不总数能凑到合心意的样子.干脆痛下决心买个3D打印机.趁快递都延误在路上,上手学一下3D建模 ...

  9. X10SLH-N6-ST031入坑记录1

    前言 最近看着别人搞All in one虚拟机,手痒的紧,刚好淘宝推荐里看到了这块6口万兆的板子,觉得挺合适,就趁着中秋假期急忙入手了,把玩了几天,把几个坑先记录一下,也方便坑友入坑. 1.为啥选X1 ...

  10. 【NVIDIA Xavier NX入坑记录1】环境语言包下载、系统语言设置、Google输入法无候选输入栏的解决

    文章目录 前言 一.系统环境中文语言包的更新下载 二.系统设置为中文语言环境 三.解决Google输入法无法显示候选栏 总结 前言 一直在用Xavier NX做点实操学习,刚入手时就想将系统换成中文的 ...

最新文章

  1. asp.net性能的技巧
  2. JavaScript之浅复制【拷贝】与深复制【拷贝】【二】
  3. 微服务【1.1】Swagger的使用
  4. [转]项目失败的经验
  5. leetcode21 合并两个链表
  6. 微信时代计算机教学,互联网+时代技工院校计算机教学方式研究
  7. Asp.Net实例:C# 绘制统计图(二) ——折线统计图的绘制
  8. 分布式模块化 Java 开发平台 Castle-Platform
  9. Codeforces Round #439 (Div. 2)题解
  10. cad放大_dwg文件怎么打开?CAD看图,360°精确识别CAD图块,细节见真章
  11. 计算机文件自动备份到移动硬盘,1个让移动硬盘自动备份的简单方法!
  12. WinPcap vs Npcap
  13. 解决虚拟机桥接模式无法上网的问题
  14. 卡诺模型案例分析_设计师必修课:KANO 模型的讲解与案例分析
  15. 数据挖掘经典算法--priori算法
  16. matlab研究微分方程,基于MATLAB的微分方程求解电路仿真实验研究与实现
  17. 15kw科比服务器型号,KEB变频器/keb伺服技术/KEB制动器
  18. 电脑连接手机热点时,电脑能够搜到但是却连接不上的问题
  19. v2ex 非计算机专业,计算机的在职研究生值得考吗?
  20. html+css仿QQ邮箱静态界面

热门文章

  1. 数据治理系列1:数据治理框架【解读分析】
  2. Ubuntu 16.10 下 使用 C/C++ IDE anjuta 编译出现You must have `libtool' installed
  3. matlab lte rsrp,为什么选择 FieldFox 手持式分析仪?- 更宽带宽,更高精度
  4. matlab 二维离散傅立叶变换,二维离散傅里叶变换.PPT
  5. JAVA羽毛球篮球运动场地预约管理系统毕业设计 开题报告
  6. uni-app 实现自定义音效播放
  7. Office安装找不到Office.zh-cn\***文件以及安装后无法正常显示图标
  8. 2022-2027年中国金融科技行业市场调研及未来发展趋势预测报告
  9. tensorflow实现深度可分离卷积
  10. MBSE基于模型的系统工程