SBC-T113S产品特性:
- 采用Allwinner公司Cortex-A7双核T113-S3/S4处理器,运行最高速度为1.2GHZ;
- 内置64-bit XuanTie C906 RISC-V协处理器(仅T113-S4支持);
- 支持JPEG/MJPEG视频编码,最大分辨率1080p@60fps;支持多格式1080P@60fps视频解码 (H.265,H.264, MPEG-1/2/4);
- 支持RGB666/LVDS/MIPI-DSI,分辨率最高1920x1080;
- 支持128-256M Bytes DDR3 SDRAM,其中T113-S3内置128MB;T113-S4内置256MB;
- 支持SPI NAND存储和启动(默认:256MB)或者EMMC启动(默认:4GB,最大32GB);
- 支持一路USB2.0 OTG(设计为TYPE-A接口);支持二路USB2.0 HOST;
- 支持七路RS232通信或者6路RS232和1路RS485(非隔离);
- 支持一路CAN BUS通信(非隔离);
- 支持一路10/100M以太网;
- 稳定的操作系统的支持,可预装LINUX 5.4(Preempt)或者OpenWRT;
- 经典尺寸主板,尺寸为120*100MM;
SBC-T113S产品功能评估图:
触摸屏测试:
触摸一般有电容式触摸和电阻式触摸两种,SBC-T113主板硬件支持电阻式触摸,也支持电容式触摸。电容式触摸屏在使用中较为灵敏,不需要较准,出现问题少。电阻式触摸屏稳定性更好,但是它的工作原理是需要有一定的压力才工作的,所以灵敏度相对差一些。另外,电阻式触摸屏也需要校准程序进行校准后,才能进入正式工作状态。
电阻式触摸屏测试:
SBC-T113S主板通过CN24接口连接四线电阻式触摸屏,CN24接口位置如下图:
图35 电阻式触摸屏接口
一般四线电阻式触摸屏与SBC-T113S主板的示例连线如下:
图36 主板与电阻式触摸屏连接示意
电阻式触摸屏与主板连接好后,如果已经启动了QT相关程序,首先关闭启动的Qt程序。可以采用ps指令先查看是否有qt程序在运行。然后使用kill指令关闭qt程序。另外,为了确认是本次的触摸屏校验有效,建议先删除之前的校验文件,该文件是位于/etc目录下的pointercal文件。
电阻式触摸屏是需要先校验后,才能正常工作。Linux下电阻式触摸屏的校验有一个专有的库tslib。校验前除了满足电阻式触摸屏和主板的硬件连接外,还要满足的条件是tslib已经被移植到主板上,并进行了环境变量的设置。如何判断已经设置好了环境变量呢?一般使用env指令即可查看环境变量:
Target# env
root@T113-Embfly:/# env
TSLIB_CALIBFILE=/etc/pointercal
EDITOR=/bin/vi
TSLIB_PLUGINDIR=/usr/lib/ts
TSLIB_CONFFILE=/etc/ts.conf
USER=root
PAGER=/bin/more
PWD=/
HOME=/root
LC_CTYPE=zh_CN.UTF-8
TSLIB_TSDEVICE=/dev/input/touchscreen0
SHELL=/bin/sh
TERM=vt102
TSLIB_TSEVENTTYPE=input
SHLVL=1
TSLIB_FBDEVICE=/dev/fb0
LOGNAME=root
XDG_RUNTIME_DIR=/dev/shm
TSLIB_CONSOLEDEVICE=none
PATH=/bin:/sbin:/usr/bin:/usr/sbin
PS1=\u@\h:\w\$
_=/usr/bin/env
OLDPWD=/etc/mdev
root@T113- Embfly:/#
从env执行的指令中我们可以看到环境变量中的确已经配置了tslib,
配置 | 说明 |
TSLIB_CALIBFILE=/etc/pointercal | 校验后的数据保存在pointercal里 |
TSLIB_PLUGINDIR=/usr/lib/ts | 设置tslib库所在的目录 |
TSLIB_CONFFILE=/etc/ts.conf | tslib的配置文件 |
TSLIB_TSDEVICE=/dev/input/touchscreen0 | 设置tslib所用的触摸屏节点,通常可以使用evtest查看节点号,或者到/dev/input目录下使用ls –al指令查看 |
TSLIB_FBDEVICE=/dev/fb0 | Tslib所用的framebuffer,也就是说tslib工作时,用来显示的缓冲区,缓冲区的内容直接显示到LCD液晶屏上。SBC-T113主板默认设置为/dev/fb0 |
这里要专门强调的是:TSLIB_TSDEVICE=/dev/input/touchscreen0,通过evtest指令查看,并没有看到/dev/input/touchscreen0节点:
root@T113-Embfly:/dev/input# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: sunxi-keyboard
/dev/input/event1: sunxi-ts
/dev/input/event2: sunxi-gpadc0
/dev/input/event3: sunxi-gpadc1
/dev/input/event4: audiocodec sunxi Audio Jack
Select the device event number [0-4]:
那么这个节点来自哪里呢?
root@T113-Embfly:/# cd /dev/input/
root@T113-Embfly:/dev/input# ls -al
total 0
drwxr-xr-x 3 root root 180 Jan 1 00:00 .
drwxr-xr-x 11 root root 2900 Jan 1 00:00 ..
drwxr-xr-x 2 root root 80 Jan 1 00:00 by-path
crw-rw---- 1 root root 13, 64 Jan 1 00:00 event0
crw-rw---- 1 root root 13, 65 Jan 1 00:00 event1
crw-rw---- 1 root root 13, 66 Jan 1 00:00 event2
crw-rw---- 1 root root 13, 67 Jan 1 00:00 event3
crw-rw---- 1 root root 13, 68 Jan 1 00:00 event4
lrwxrwxrwx 1 root root 17 Jan 1 00:00 touchscreen0 -> /dev/input/event1
root@T113-Embfly:/dev/input#
原来/dev/input/touchscreen0是/dev/input/event1的软链接。那么/dev/input/event1又是谁的节点呢?从evtest指令得到的信息是:/dev/input/event1节点来自sunxi-ts设备,这个设备是T113-i的电阻式触摸屏控制器。
电阻式触摸屏的硬件连接和软件环境配置妥当后,即可进行触摸屏的校验工作,指令如下:
Target# rm /etc/pointercal
Target# ts_calibrate
执行ts_calibrate操作指令后,液晶屏显示设备上会显示校准界面,此时点击校准准星进行校准,依次点击五次后,校准测试完成。
图37 电阻式触摸屏校验界面
同时,终端会随着校准过程打印出相应的信息,如下图所示:
图38 电阻式触摸屏校验终端信息
屏幕校准完成以后,可以执行以下指令,进行触屏测试:
Target# ts_test
执行操作指令后,触摸屏会显示测试界面。
默认是在“Drag”模式,此模式下手指在屏幕上点击或者拖动,准星会随之移动。如下图所示:
图39 电阻式触摸屏测试界面
点击“Draw”选项,可以进入到“Draw”模式。此模式下,准星会消失,可以在屏幕上做画线测试。如下图所示:
图40 电阻式触摸屏测试界面
点击“Quit”选项,退出测试界面,结束测试。测试过程中,终端会打印出相应的信息,如下图所示。
图41 电阻式触摸屏测试终端信息
校准坐标,执行如下指令,并点击屏幕,查看打印坐标是否正常,按"Ctrl + C"结束。
校准完毕,可执行reboot指令重新启动主板,并进入qt程序。
Target# reboot