之前有写过一篇关于Gt911触摸的文章,今天写一篇关于如何在openharmony上调试电阻屏触摸驱动,
首先需要修改如下两个文件,将我们的驱动文件加入驱动编译框架中,

diff --git a/drivers/adapter/khdf/linux/model/input/Kconfig b/drivers/adapter/khdf/linux/model/input/Kconfig
index 7257f0b098..838263383a 100755
--- a/drivers/adapter/khdf/linux/model/input/Kconfig
+++ b/drivers/adapter/khdf/linux/model/input/Kconfig
@@ -18,3 +18,10 @@ config DRIVERS_HDF_TP_2P35_FT6236depends on DRIVERS_HDF_INPUThelpAnswer Y to enable HDF TP 2P35 FT6236 driver.
+
+config DRIVERS_HDF_TP_4P_T113
+    bool "Enable HDF tp 4P T113 driver"
+    default n
+    depends on DRIVERS_HDF_INPUT
+    help
+      Answer Y to enable HDF TP 4P T113 driver.
diff --git a/drivers/adapter/khdf/linux/model/input/Makefile b/drivers/adapter/khdf/linux/model/input/Makefile
index 024bc5e2d1..73c0758cb3 100644
--- a/drivers/adapter/khdf/linux/model/input/Makefile
+++ b/drivers/adapter/khdf/linux/model/input/Makefile
@@ -27,6 +27,8 @@ obj-$(CONFIG_DRIVERS_HDF_TP_5P5_GT911) += \$(INPUT_ROOT_DIR)/touchscreen/touch_gt911.oobj-$(CONFIG_DRIVERS_HDF_TP_2P35_FT6236) += \$(INPUT_ROOT_DIR)/touchscreen/touch_ft6336.o
+obj-$(CONFIG_DRIVERS_HDF_TP_4P_T113) += \
+             $(INPUT_ROOT_DIR)/touchscreen/touch_t113.occflags-y += -Iinclude/../drivers/hdf/framework/model/input/driver \-Iinclude/../drivers/hdf/framework/model/input/driver/input_bus_ops \
diff --git a/kernel/linux/config/linux-5.4/arch/arm/configs/t113_nand_linux_small_defconfig b/kernel/linux/config/linux-5.4/arch/arm/configs/t113_nand_linux_small_defconfig
index 5516967977..51f92549e6 100644
--- a/kernel/linux/config/linux-5.4/arch/arm/configs/t113_nand_linux_small_defconfig
+++ b/kernel/linux/config/linux-5.4/arch/arm/configs/t113_nand_linux_small_defconfig
@@ -263,6 +263,7 @@ CONFIG_DRIVERS_HDF_PLATFORM_I2C=yCONFIG_DRIVERS_HDF_INPUT=yCONFIG_DRIVERS_HDF_TP_5P5_GT911=y# CONFIG_DRIVERS_HDF_TP_2P35_FT6236 is not set
+CONFIG_DRIVERS_HDF_TP_4P_T113=y# CONFIG_DRIVERS_HDF_WIFI is not set# CONFIG_DRIVERS_HDF_BT is not set# CONFIG_DRIVERS_HDF_SENSOR is not set

然后可以使用hb build -f编译测试下,有没有编译我们新加入的文件。加入的文件在drivers/framework/model/input/driver/touchscreen/touch_t113.c,然后就可以开始编写电阻触摸屏驱动了。
首先需要添加驱动入口

struct HdfDriverEntry g_touchT113ChipEntry = {.moduleVersion = 1,.moduleName = "HDF_TOUCH_T113",.Init = HdfT113ChipInit,
};HDF_INIT(g_touchT113ChipEntry);

然后对应的在文件vendor/xingyun/t113_nand/hdf_config/device_info/device_info.hcs中添加如下内容。

diff --git a/vendor/xingyun/t113_nand/hdf_config/device_info/device_info.hcs b/vendor/xingyun/t113_nand/hdf_config/device_info/device_info.hcs
index 7acc319ff2..f91710d77e 100755
--- a/vendor/xingyun/t113_nand/hdf_config/device_info/device_info.hcs
+++ b/vendor/xingyun/t113_nand/hdf_config/device_info/device_info.hcs
@@ -83,6 +83,15 @@ root {serviceName = "hdf_touch_gt911_service";deviceMatchAttr = "zsj_gt911_5p5";}
+               device1 :: deviceNode {+                    policy = 0;
+                    priority = 130;
+                    preload = 0;
+                    permission = 0660;
+                    moduleName = "HDF_TOUCH_T113";
+                    serviceName = "hdf_touch_t113_service";
+                    deviceMatchAttr = "mc_t113_4p4";
+                }}}

然后我们可以编译验证下,是否能成功执行我们的,可以

[D/devmgr_service] DevmgrServiceUpdateStatus host:input_host 1 device:hdf_input_event1 1 status:1
[    5.006949] [W/driver_loader] failed to load node, property is null, match attr is: mc_t113_4p4
[    5.016821] [I/touch_t113] HdfT113ChipInit: enter

openharmony移植之编写电阻触摸屏驱动相关推荐

  1. STM32F1与STM32CubeIDE编程实例-XPT2046电阻触摸屏驱动

    XPT2046电阻触摸屏驱动 1.XPT2046介绍 XPT2046 是一款 4 线电阻式触摸屏控制器,包含一个 12 位 125 kHz 采样 SAR 型 A/D 转换器.XPT2046支持1.5V ...

  2. F1C100S电阻触摸屏驱动

    https://whycan.cn/t_2143.html 移植触摸屏驱动. 移植后遇到的问题,触摸中断一直在触发.[原因:由于rtp引脚复用没有设置] //读0x01C20800寄存器,可以看到没有 ...

  3. linux驱动编写(触摸屏驱动)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 早在诺基亚手机还比较流行的时候,那时候触摸屏用的还不多.但是随着触摸屏手机.即智能手机的流行,触 ...

  4. linux 触摸屏驱动课程设计,linux驱动编写(触摸屏驱动)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 早在诺基亚手机还比较流行的时候,那时候触摸屏用的还不多.但是随着触摸屏手机.即智能手机的流行,触 ...

  5. 基于全志T133-s3(Tina Linux)移植5寸RGB显示屏驱动

    基于全志T133-s3(Tina Linux)移植5寸RGB显示屏驱动 1.硬件电路 2.LCD实物图 3.LCD 的驱动 4.uboot配置 4.1.配置文件 4.2.uboot设备树 5.kern ...

  6. Linux3.4.2的触摸屏驱动分析与编写

    开发环境: 开发板:JZ2440V3 CPU:samsunS3C2440 内核:Linux3.4.2 编译工具:arm-linux-gcc 4.3.2 LCD:4.3存液晶屏AT043TN24 参考文 ...

  7. 9.触摸屏驱动移植实战

    转自 https://edu.csdn.net/lecturer/505 朱老师物联网大讲堂 <5.linux驱动开发-第9部分-5.9.触摸屏驱动移植实战> 第一部分.章节目录 5.9. ...

  8. FL2440移植LINUX-3.4.2 -- 按键驱动和触摸屏驱动移植

    (一)先移植按键输入子系统驱动: 拿过去编译,改错,然后insmod: (二)触摸屏驱动拿过去编译,改错,然后insmod: 触摸屏驱动的使用: 编译: tar xzf tslib-1.4.tar.g ...

  9. 移植基于linux-2.6.26.5内核s3c2410触摸屏驱动移植

    移植基于linux-2.6.26.5内核s3c2410触摸屏驱动移植的过程记录下来: (1)首先打一个补丁:s3c2410_touchscreen.patch, 在内核解压的根目录下 patch -N ...

最新文章

  1. linux 内核参数 杨,Linux 内核参数
  2. 最萌办公室采访 | 网易程序员灵魂大拷问(文末有福利)
  3. 第三部分:Android 应用程序接口指南---第二节:UI---第六章 对话框
  4. 战疫期,钉钉如何扛起暴增百倍的流量?【阿里云快速扩容新纪录】
  5. db2有主键时默认hash分区_不允许设置db2主键问题的解决
  6. Java中BigDecimal类型的加减乘除及大小比对
  7. python课程开课吧怎么样-律所:我们更想招这样的人……
  8. 入门 ggplot2 的图形语法
  9. 两种方法解除网页复制限制
  10. pdf文件如何生成目录 wps_WPS中如何自动生成目录
  11. 四、守护线程 deamon
  12. vi/vim保存报错:E37: No write since last change E162: No write since last change for buffer “[文件名称]“
  13. 新人爬虫学习_爬取腾讯招聘信息
  14. 传奇GEE引擎版本如何封挂?GEE引擎设置简单的封挂脚本教程
  15. 产品经理如何写产品白皮书
  16. matlab符号及其运算(1)
  17. 为什么要配置环境变量,配置环境变量有什么好处?
  18. css实现动态渐变闪烁功能
  19. C语言入门教程之一变量和常量
  20. STM32F103 基本定时器 (P2MDA-KM4)

热门文章

  1. 自动化打包平台系列(一):自动化打平台建设概览
  2. Win11右下角倒三角不见了怎么办?
  3. [神器]Windows平台本地socks5代理客户端-ProxyCap
  4. 【BP数据预测】布谷鸟算法优化BP神经网络数据预测【含Matlab源码 1121期】
  5. Android音频和视频开发
  6. 基于MPPT算法的PV光伏阵列电网模型simulink仿真
  7. Hisi3516交叉编译ffmpeg支持h264编码
  8. 息屏指纹解锁性能优化 TP LCD
  9. linux批量文件处理,Linux一行命令处理批量文件
  10. OpenCV3.X 编译 ——libpng库问题相关解决方法