Edit online

测试指南

Read time: 4 minute(s)

Luban-Lite 可以支持 CTP 和 RTP 两种触摸屏。本节详细介绍了 CTP 屏幕的详细配置流程。

  1. 使用 scons --menuconfig 命令,进入配置页面,完成下列所有配置:
    Board options  --->
        [*] Using I2c3
            I2c3 Parameter  --->
                [ ] Using I2C3 10-bit Addr(default 7-bit addr)          #默认 7bit 寻址,使能则是 10bit 寻址
                (400000) Using I2C3 Stand Speed(default fast speed)     #默认 400k 速率,可输入范围是 20Hz~400KHz
                [ ] Using I2C3 Slave Mode(default master mode)          #默认主机模式,使能则是从机模式
    Rt-Thread options  --->
        RT-Thread Components  --->
            Device Drivers  --->
                [*] Using Touch device drivers
                [*]   touch irq use pin irq
    Drivers options  --->
        Peripheral  --->
            Touch Panel Support  --->
                --- Touch Panel Support
                    Select touch device (CTP) --->      #选择 CTP 或者 RTP
                    Select CTP device (GT911) --->      #选择不同的 Touch 设备
                (i2c3) Touch using I2C channel index    #设置 I2C 总线号
                (PA.8) Touch reset pin                  #设置 TP 的复位引脚
                (PA.9) Touch irq pin                    #设置 TP 的中断引脚
                (1024) Touch real x coordinate range    #设置 TP 的 X 轴坐标真实分辨率
                (600) Touch real y coordinate range     #设置 TP 的 Y 轴坐标真实分辨率
                (1024) Screen x coordinate range        #设置显示画布的 X 轴画布真实分辨率
                (600) Screen y coordinate range         #设置显示画布的 Y 轴画布真实分辨率
                [ ]   Touch flip x coordinate           #设置 X 轴对称翻转
                [ ]   Touch flip y coordinate           #设置 Y 对称轴翻转
                [ ]   Touch 90 degrees rotation         #设置 TP 顺时针旋转 90 度
                [ ]   Touch 270 degrees rotation        #设置 TP 顺时针旋转 270 度
                [ ]   Enable touch crop                 #使能 Touch 坐标裁剪功能
                ( )     Touch crop x position of pixels #相对坐标原点 x 轴裁剪的 pixels
                ( )     Touch crop y position of pixels #相对坐标原点 y 轴裁剪的 pixels
                ( )     Touch crop width                #裁剪后画布 X 轴分辨率
                ( )     Touch crop width                #裁剪后画布 Y 轴分辨率
        Drivers examples  --->
            [*] Enable touch panel driver test command  #TP 测试程序

    完成以上配置后,保存并退出配置界面。SCons 将根据配置生成相应的构建文件和项目代码。

  2. 验证 CTP 功能

    • 使用默认项目的 test_lvgl 程序验证 CTP 的功能,系统正常启动后,即可在触屏上点触和滑动。

      当前驱动框架已完整对接 LVGL,无需额外修改 LVGL 代码。

    • 使用 test_touch 测试程序:
      1. 打开 test_touch 测试程序,并取消 test_lvgl
        注:

        运行测试程序之前,确保没有 GUI 应用程序打开 gt911 设备。

        Application options  --->
            [ ] ArtInChip lvgl demo
      2. 系统驱动之后,运行 test_touch 命令:
        test_touch gt911
      3. 在 CTP 上触摸滑动,观察调试串口输出,示例如下:
        id = GT911                  # 获取 id
        range_x = 1024              # 打印 x 范围
        range_y = 600               # 打印 y 范围
        point_num = 5
        有触屏事件时,打印触摸点坐标,输出示例如下:
        0 844 379 2           #按压手指的 id x 坐标值 y 坐标值 触摸事件(2:按下  3:移动  1:抬起)           
        0 844 379 3
        0 844 379 3
        0 834 379 3
        1 744 285 2
        0 822 379 3
        1 788 320 3
        0 801 380 3
        1 736 355 3
        0 785 382 3
        1 698 345 3
        0 754 387 3
        1 648 282 3
        0 658 369 3
        1 536 245 1
        0 645 414 1