6AV6545-0BA15-2AX0 西门子TP170A触摸式面板 一级代理商 6AV6545-0BA15-2AX0 西门子TP170A触摸式面板 一级代理商
产品参数:***备件*** SIMATIC 触控面板 TP 170A 蓝色模式 STN 显示屏 MPI/PROFIBUS-DP 接口 可利用 mit ProTool/Lite 进行项目组态 V5.2 及以上版本
qt-embedded-3.1.1,觉得应该做个总结 步利用tslib-1.3生成校正文件: 因为qt3在正式开始运行之前需要对触摸屏进行校验,qt3是通过读取/etc/pointercal文件里面的内容进行校正的,但是在此之前我的 板子上并没有安装qt环境,更不用说有这个文件了,因此在开始移植qt之前,我需要先利用tslib对触摸屏进行校正以生成相应的校正文件并重新烧入文件 系统中。下面就是编译和使用tslib进行校正的过程过程 1、编译 cd tslib-1.3 export CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc //*交叉编译器 ./autogen.sh //生成config文件 export PATH=/usr/local/arm/3.3.2/bin:$PATH echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache ./configure --host=arm-linux --cache-file=arm-linux.cache --enable-inputapi=no 如果你触摸屏驱动程序支持ioctl操作,上面的configure操作中的--enable-inputapi=no你可以删除 vi src/ts_read_raw.c //修改内容如下 **************************************************** 在make之前,为了支持触摸屏,打开src/ts_read_raw.c文件,查看触摸屏驱动程序数据结构,看与ts_read_raw.c结构中的哪个一样,就将代码中的 char *defaulttseventtype="UCB1x00"; 修改为自己板子上对应的驱动结构。因为我的驱动对应的是h3600_ts_event结构,虽然我的驱动程序是/dev/ts,但是它的结构和h3600_ts一样。 typedef struct { unsigned short pressure; unsigned short x; unsigned short y; unsigned short pad; } TS_RET; 所以修改为: char *defaulttseventtype="H3600"; ************************************ 如果不修改源代码,也可以在后面的测试中重新*环境变量 export TSLIB_TSEVENTTYPE=H3600 //通过这个对tslib中的设备结构体定义 ***************************************************** make make install //只用通过这个命令才能在/usr/local/share/ts/plugins/目录下找到相应的.so共享库,不然无法生成.so的库,只能看到.o文件 ************************************************* |