HOME
Shop
  • English
  • 简体中文
HOME
Shop
  • English
  • 简体中文
  • Product Series

    • FPGA+ARM

      • GM-3568JHF

        • 1. Introduction

          • GM-3568JHF Introduction
        • 2. Quick Start

          • 01 Environment Construction
          • 02 Compilation Instructions
          • 03 Burning Guide
          • 04 Debugging Tools
          • 05 Software Update
          • 06 View information
          • 07 Test Command
          • 08 Application Compilation
          • 09 Source code acquisition
        • 3. Peripherals and Interfaces

          • USB
          • Display and touch
          • Ethernet
          • WIFI
          • Bluetooth
          • TF-Card
          • Audio
          • Serial Port
          • CAN
          • RTC
        • 4. Application Development

          • 01 UART read and write case
          • 02 Key detection case
          • 03 LED light flashing case
          • 04 MIPI screen detection case
          • 05 Read USB device information example
          • 06 FAN Detection Case
          • 07 FPGA FSPI Communication Case
          • 08 FPGA DMA read and write case
          • 09 GPS debugging case
          • 10 Ethernet Test Cases
          • 11 RS485 reading and writing examples
          • 12 FPGA IIC read and write examples
          • 13 PN532 NFC card reader case
          • 14 TF card reading and writing case
        • 5. QT Development

          • 01 ARM64 cross compiler environment construction
          • 02 QT program added automatic startup service
        • 6. Others

          • 01 Modification of the root directory file system
          • 02 System auto-start service
    • ShimetaPi

      • M4-R1

        • Introduction

          • M4-R1 Introduction
        • Get started quickly

          • OpenHarmony概述
          • 镜像烧录
          • 开发环境准备
          • Hello World应用以及部署
        • Application Development

          • getting Started

            • 第一章 ArkTS语言简介
            • 第二章 UI组件介绍和实际应用(上)
            • 第三章 UI组件介绍和实际应用(中)
            • 第四章 UI组件介绍和实际应用(下)
          • Advanced

            • 第一章 入门指引
            • 第二章 三方库的引用和使用
            • 第三章 应用编译以及部署
            • 第四章 命令行恢复出厂设置
            • 第五章 系统调试--HDC调试
            • 第六章 APP 稳定性测试
            • 第七章 应用测试
        • Equipment Development

          • 第一章 环境搭建
          • 第二章 下载源码
          • 第三章 编译源码
        • Peripherals and interfaces

          • 树莓派接口
          • GPIO 接口
          • I2C 接口
          • SPI通信
          • PWM控制
          • 串口通讯
          • TF Card
          • 屏幕
          • 触摸
          • 音频
          • RTC
          • Ethernet
          • M.2
          • MINI-PCIE
          • Camera
          • WIFI&BT
          • 树莓派拓展板
        • Frequently asked questions

          • 资源下载
      • M5-R1

        • Introduction

          • Introduction to ShimetaPi M5-R1
    • OpenHarmony

      • SC-3568HA

        • Introduction

          • SC-3568HA Overview
        • Quick Start Guide

          • OpenHarmony Overview
          • Image Flashing
          • Setting Up the Development Environment
          • Hello World Application and Deployment
        • Application Development

          • ArkUI

            • Chapter 1 Introduction to ArkTS Language
            • Chapter 2 Introduction to UI Components and Practical Applications (Part 1)
            • Chapter 3 Introduction to UI Components and Practical Applications (Part 2)
            • Chapter 4 Introduction to UI Components and Practical Applications (Part 3)
          • Expand

            • Chapter 1 Getting Started Guide
            • Chapter 2 Referencing and Using Third-Party Libraries
            • Chapter 3: Application Compilation and Deployment
            • Chapter 4: Command-Line Factory Reset
            • Chapter 5: System Debugging -- HDC (Huawei Device Connector) Debugging
            • Chapter 6 APP Stability Testing
            • Chapter 7 Application Testing
        • Device Development

          • Chapter 1 Environment Setup
          • Chapter 2 Download Source Code
          • Chapter 3 Compiling Source Code
        • Peripheral And Iinterface

          • Raspberry Pi interface
          • GPIO Interface
          • I2C Interface
          • SPI communication
          • PWM (Pulse Width Modulation) control
          • Serial port communication
          • TF Card
          • Display Screen
          • Touch
          • Audio
          • RTC
          • Ethernet
          • M.2
          • MINI-PCIE
          • Camera
          • WIFI&BT
          • Raspberry Pi expansion board
        • Frequently Asked Questions

          • Resource Downloads
      • M-K1HSE

        • Introduction

          • M-K1HSE Introduction
        • Quick Start

          • Development environment construction
          • Source code acquisition
          • Compilation Notes
          • Burning Guide
        • Peripherals and interfaces

          • 01 Audio
          • 02 RS485
          • 03 Display
        • System customization development

          • System transplant
          • System customization
          • Driver Development
          • System Debugging
          • OTA Update
    • EVS-Camera

      • CF-NRS1

        • 1. Introduction

          • Event Camera Technical Documentation
        • 2. Quick Start

          • Host driver and software installation
        • 3. SDK application development

          • API Usage Instructions
      • CF-CRA2

        • Introduction

          • About CF-NRS1
    • AI-model

      • 1684XB-32T

        • Introduction

          • AIBOX-1684XB-32 Introduction
        • Get started quickly

          • First time use
          • Network Configuration
          • Disk usage
          • Memory allocation
          • Fan Strategy
          • Firmware Upgrade
        • Deployment Tutorial

          • Algorithm deployment
          • Deploy Llama3 Example
        • Application Development

          • Sophgo SDK Development
          • Sophon LLM_api_server development
          • Deploy MiniCPM-V-2_6
          • Qwen-2-5-VL Image and Video Recognition DEMO
          • Qwen3-chat-DEMO
          • Qwen3-Qwen Agent-MCP-Demo
          • Qwen3-langchain-AI Agent
      • 1684X-416T

        • Introduction

          • AIBOX-1684X-416 Introduction
        • Demo simple operation guide

          • Simple instructions for using shimeta smart monitoring demo
    • Core-Board

      • C-3568BQ

        • Introduction

          • C-3568BQ Overview
      • C-3588LQ

        • Introduction

          • C-3588LQ Introduction
      • GC-3568JBAF

        • Introduction

          • GC-3568JBAF Introduction
      • C-K1BA

        • Introduction

          • C-K1BA Introduction

Touch

1. I2C touch

Take SC-3568HA as an example. The board currently has a set of I2C touch interfaces. The touch driver currently adapted to this interface is gt9xx. This driver is a driver under the HDF framework. The driver file is located in this path:

  • drivers/hdf_core/framework/model/input/driver/touchscreen/touch_gt911.c

To learn more about the HDF driver framework, please refer to this article: https://blog.csdn.net/wobuzai11/article/details/135959347

The interface location is as shown in the figure:

TOOL

2. USB touch

HarmonyOS also supports USB touch. When USB touch is connected, the following will be printed in the log:

    [ 1483.298817] usb 5-1: new full-speed USB device number 3 using xhci-hcd
    [ 1483.440164] usb 5-1: New USB device found, idVendor=10c4, idProduct=5e52, bcdDevice= 2.00
    [ 1483.440199] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [ 1483.440207] usb 5-1: Product: TOUCH Devices
    [ 1483.440214] usb 5-1: Manufacturer: TOUCH FREE 
    [ 1483.440220] usb 5-1: SerialNumber: MTD3210
    [ 1483.458133] input: TOUCH FREE  TOUCH Devices as /devices/platform/usbhost/fd000000.dwc3/xhci-hcd.4.auto/usb5/5-1/5-1:1.0/0003:10C4:5E52.0002/input/input8
    [ 1483.461402] hid-multitouch 0003:10C4:5E52.0002: input,hiddev96,hidraw1: USB HID v1.10 Device [TOUCH FREE  TOUCH Devices] on usb-xhci-hcd.4.auto-1/input0

3. Touch debugging

The touch screen belongs to the input subsystem device. The input subsystem is a unified driver framework provided by Linux for input devices. The driver methods of input devices such as keys, keyboards, touch screens and mice are similar. Input devices driven by the input subsystem can be submitted to the kernel through a unified data structure. The data structure includes the input time, type, code, and specific key value or coordinates. The kernel passes it to the user space through the file interface in the /dev/input directory.

The input sub-device system can obtain the events reported by the device to the system through the getevent command

The board has a built-in getevent command, which can be used to debug whether the touch screen is working properly.

    # getevent 获取所有input子设备,并监听所有设备上报事件
    ~# getevent
    add device 1: /dev/input/event7
    name:     "TOUCH FREE  TOUCH Devices"    # USB触摸
    add device 2: /dev/input/event6
    name:     "VSoC touchscreen"             # I2C触摸
    add device 3: /dev/input/event1
    name:     "fe6e0030.pwm"
    add device 4: /dev/input/event4
    name:     "Logitech USB Optical Mouse"
    add device 5: /dev/input/event3
    name:     "adc-keys"
    add device 6: /dev/input/event5
    name:     "rk-headset"
    add device 7: /dev/input/event0
    name:     "hdmi_cec_key"
    add device 8: /dev/input/event2
    name:     "rk805 pwrkey"
    # event6(触摸)上报
    /dev/input/event6: 0003 0036 000003a8
    /dev/input/event6: 0003 0039 00000000
    /dev/input/event6: 0000 0002 00000000
    /dev/input/event6: 0001 014a 00000001
    ......

    # getevent -l /dev/input/event* 监听子设备上报的事件类型
    ~# getevent -l /dev/input/event6
    EV_ABS       ABS_MT_POSITION_X    0000014c
    EV_ABS       ABS_MT_POSITION_Y    000002b8
    EV_ABS       ABS_MT_TRACKING_ID   00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_KEY       BTN_TOUCH            DOWN      #   手指按下
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000
    EV_ABS       ABS_MT_POSITION_X    0000014c  #   X坐标
    EV_ABS       ABS_MT_POSITION_Y    000002b8  #   Y坐标
    EV_ABS       ABS_MT_TRACKING_ID   00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000
    EV_ABS       ABS_MT_POSITION_X    0000014c
    EV_ABS       ABS_MT_POSITION_Y    000002b8
    EV_ABS       ABS_MT_TRACKING_ID   00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000
    EV_ABS       ABS_MT_POSITION_X    0000014c
    EV_ABS       ABS_MT_POSITION_Y    000002b8
    EV_ABS       ABS_MT_TRACKING_ID   00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000
    EV_KEY       BTN_TOUCH            UP        #   手指抬起
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000
    EV_SYN       SYN_MT_REPORT        00000000
    EV_SYN       SYN_REPORT           00000000

Edit this page on GitHub
Last Updated:
Contributors: zsl, zwhuang
Prev
Display Screen
Next
Audio