Edit online

测试指南

测试环境
  • 硬件
    • 带触屏功能的屏幕

    • 带 RTP 接口的开发板

    • USB Type-C 数据线,用于给开发板供电、烧写

    • USB 转串口的线,用于连接开发板的调试串口

    • 手写笔,可以更方便精准的点击 RTP

  • 软件
    • PC 端的串口终端软件,用于 PC 和开发板进行串口通信

    • AiBurn 烧写工具

    • tslib 开源库,用于管理 input 设备和事件、以及坐标校准,luban 中已集成

    • ts_draw 测试工具,用于测试触屏的坐标事件、跳点统计等,luban 中已集成

软件配置

  • tslib:在 luban 的根目录下通过 make menuconfig 可以打开 tslib:
    Third-partypackages[*]tslib
  • ts_draw
    在 luban 的根目录下通过 make menuconfig 可以打开,最终在板子上会看到工具 draw:
    ArtinchippackagesSamplecode[*]test-touchscreen

    ts_draw 会调用 tslib 接口,所以依赖 tslib 的运行环境,所以运行前必须先配置好 tslib。

配置 tslib 运行环境

在板子的 shell 中执行以下命令配置几个环境变量:

exportTSLIB_FBDEVICE=/dev/fb0
exportPOINTERCAL_CALIBFILE=/usr/etc/ts-calib.conf
exportTSLIB_CONSOLEDEVICE=none
exportTSLIB_TSDEVICE=/dev/input/event0
exportTSLIB_PLUGINDIR=/usr/lib/ts
exportTSLIB_CALIBFILE=/tmp/pointercal

坐标校准

配置好 tslib 运行环境后,在板子的 shell 中执行 ts_calibrate 工具,在触屏界面会出现一个校准界面,按照提示,点击 5 个小十字的中心,完成校准。

# ts_calibratexres=1024, yres=600

读取坐标值

在板子的 shell 中执行 ts_draw 测试工具,点击触屏 draw 会打印出每次坐标事件。

# ts_draw -d
FB res: X 1024, Y 600,Size 2457600, Border 0, Jump thd 41646290364.886053: X -  734 Y -  280 P -   341646290364.906078: X -  734 Y -  280 P -   491646290364.926056: X -  734 Y -  280 P -   651646290364.946044: X -  734 Y -  280 P -   761646290364.966063: X -  734 Y -  279 P -   981646290364.986043: X -  735 Y -  279 P -  117

小技巧

上述坐标是通过 calibrate 校准后的坐标,如果要查看原始坐标可增加参数-r。

跳点分析

ts_draw 具备一个功能,就是统计跳点的个数,判断方法是看到连续出现的两个坐标间距太大就认为是跳点。“间距”门限默认是 4,可以通过参数设置该值。
# ts_draw -h
Usage: ts_draw [Options], built on Apr 27202214:42:38
    -r, --raw       Use the raw coordinate, default: disable
    -d, --debug     Open more debug information, default: disable
    -b, --border    The width of border(will ignore), default 0
    -j, --jumb-thd  The threshold to determinate jumb sample, default 4
    -h, --help

# ts_draw  -j 3
FB res: X 800, Y 480,Size 1536000, Boarder 0, Jump thd 3
Stats: Sum 44, Out 0(0.00%), Jump 1(2.27%), Period 5.06 ms

Stats: Sum 265, Out 0(0.00%), Jump 1(0.38%), Period 5.06 ms

RTP 画点测试

RTP 画点测试可以使用 shell 命令 test_rtp_draw -d

aic /> test_rtp_draw -d
0: X 552/2146, Y 496/796, Press 2011: X 551/2140, Y 494/802, Press 2072: X 551/2142, Y 496/797, Press 242