Qt移植对USB鼠标键盘、触摸屏的支持
经过一番搜索,发现对Qt键盘的支持主要关系到两个方面:
1、 键盘类型确定:
4.7以前的Qt版本,如果是PS2圆孔键盘,Qt编译时需加上选项:-qt-kbd-vr41xx(未测试);如果是USB键盘,需加上-qt-kbd-usb选项。
Qt4.7.3默认的是tty,对于USB键盘可用,不需要配置。
2、环境变量设置:
然后移植到目标板上,还需要设置环境变量QWS_KEYBOARD:
$export QWS_KEYBOARD="USB:/dev/input/event0"
对于qt鼠标键盘移植问题,还是有点纳闷。
$export set QWS_KEYBOARD="TTY:/dev/tty1"
根据不同的开发板,这个似乎不同。我的:
$export set QWS_KEYBOARD="TTY:/dev/input/event4"
qt的程序有键盘输入值,但是是很多不规则的字符集,不知道为什么。
$./qt -qws
Could not initialize virtual console switching.
问题解决了:
不要使用QWS_KEYBOARD,这个设置适合自己做按键;使用QWS_USB_KEYBOARD,这个是支持USB标准键盘的。
$export QWS_USB_KEYBOARD=/dev/input/event4
3、说明:
提示:可以用 $cat /dev/input/event 拔插USB键盘,查看哪个是你的键盘设备节点。有两个设备节点,可以用
$cat /dev/input/event4 或$cat /dev/input/event5
回车,再按键盘,看终端是否有字符输出,可以确定可用的设备节点。
推荐帖子:
http://www.qtcn.org/bbs/simple/?t47670.html
二、USBS鼠标:
1、环境变量设置:
1.1 微软鼠标(USB无线)
TSLIB:/dev/input/touchsreen0"
TSLIB:/dev/input/touchsreen0"
hidraw: pid 1884 passed too short report
1.2 雷柏鼠标(USB无线)
TSLIB:/dev/input/touchsreen0"
1.3 最新进展,鼠标可用
CONFIG_INPUT_MOUSE=y
#export QWS_MOUSE_PROTO=""
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
1.4 鼠标、触摸屏同时使用
export QWS_MOUSE_PROTO="tslib:/dev/input/touchscreen0 mouseman:/dev/input/mice"
/usr/etc/ts.conf中的配置。
今天主要是完成tslib在mini210开发板上的移植,传统的移植方法在这个上面根本行不通,不得不说,不知内幕,你永远都不会懂,一个黑匣子会难死多少脑细胞啊,在还好我们有陈sir,呵呵,下面写一下主要的过程和重点:
首先是ts.conf,module_raw input修改成module_raw friendlyarm-ts-input,其余相同
。其次是friendlyarm-ts-input.so,在友善之臂自带的文件系统中/usr/lib/ts目录下,可以把整个ts目录拷贝取代编译
tslib形成lib/ts目录。然后是拷贝相应的libts-1.0.so.0到自己做的文件系统/lib下,最后是配置环境变量在/etc
/profile中加入
export T_ROOT=/opt/tslib
export LD_LIBRARY_PATH=$T_ROOT/lib //指定tslib库文件路径
//export TSLIB_CONSOLEDEVICE=none //tslib运行需要的控制台,这里就是LCD屏幕 ,设定控制台设备为none,否则默认为/dev/tty,
export TSLIB_FBDEVICE=/dev/fb0 //指定帧缓冲设备
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_TSDEVICE=/dev/touchscreen-1wire //指定触摸屏设备节点文件
export TSLIB_CALIBFILE=/etc/pointercal //指定触摸屏校准文件pintercal的存放位置export QWS_MOUSE_PROTO=tslib:/dev/touchscreen-1wire
执行ts_calibrate校验程序。
Qt移植对USB鼠标键盘、触摸屏的支持的更多相关文章
- 使用Gadget 做usb鼠标键盘设备
使用Gadget 做usb鼠标键盘设备 感谢TI社区提供的好帮助啊!http://e2e.ti.com/support/arm/sitara_arm/f/791/p/571771/2103409?pi ...
- USB鼠标键盘数据格式以及按键键值
鼠标发送给PC的数据每次4个字节 BYTE1 BYTE2 BYTE3 BYTE4 定义分别是: BYTE1 -- |--bit7: 1 表示 Y 坐标的变化量超出-256 ...
- 【Linux开发】【Qt开发】tslibs的配置(触摸屏没有,HDMI屏幕):Qt界面响应USB鼠标
s3c2416 linux qt4.x 由于触摸屏坏了,板子只能用鼠标了,结果以前可以用的现在鼠标突然不能用了 为此交叉编译了qt的多个版本,也换过根文件系统,以为是tslib版本的问题,却发现q ...
- 解决ubuntu16.04 USB鼠标键盘使用卡顿
小米游戏本,键盘突然M建不能用,去了售后换了个键盘. 小米售后真的不想吐槽……入坑 键盘鼠标卡顿由于挂起导致失灵,每次需要激活所以卡顿 解决办法如下: 编辑如下文件配置 sudo vim /etc/l ...
- STM32 USB 鼠标+键盘 串口控制
*MOS0101000000# 鼠标左键按下 *MOS0102000000# 鼠标右键按下 *MOS0103000000# 鼠标中键按下 *MOS0100000000# 鼠标抬起 *MOS01000a ...
- 玩转X-CTR100 l USB功能-HOST鼠标键盘
更多塔克创新资讯欢迎登陆[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] X-CTR100控制器具有MicroUSB接口,支持SLAVE和HOST两 ...
- 【Linux开发】【Qt开发】嵌入式Qt程序使用触屏或USB鼠标方式
上文<嵌入式Qt开发-移植到ARM开发板 >介绍了Qt程序的移植,本文再说下如何使开发板Qt程序使用触摸屏或USB方式进行交互. 之前刚把一个qt程序移植到arm板上成功运行显示时就开心的 ...
- usb的hid鼠标键盘报告描述符(五)
title: usb的hid鼠标键盘报告描述符 tags: linux date: 2018/12/20/ 18:05:08 toc: true --- usb的hid鼠标键盘报告描述符 https: ...
- QT 11 鼠标键盘事件添加
鼠标事件 void mousePressEvent(QMouseEvent *event); //单击 void mouseReleaseEvent(QMouseEvent *event); //释放 ...
随机推荐
- HTML5之本地存储localstorage
Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Sto ...
- Java基础05 实施接口(转载)
经过封装,产品隐藏了内部细节,只提供给用户接口(interface). 接口是非常有用的概念,可以辅助我们的抽象思考.在现实生活中,当我们想起某个用具的时候,往往想到的是该用具的功能性接口.比如杯子, ...
- makefile编写---单个子目录编译模板
经过这次地库项目之后,虽然时间不久,跟团队在一起,虽然队员不一定在技术上有过人之处,但是来自大公司的员工,在工具使用和代码规范方面还是有点可鉴之处,在搭建主控模块是,就得面临makefile编写,因为 ...
- EntityFramework(EF) 单表与主从表的使用
一.单表Reader 1 构建Reader类 public class Reader { public int ReaderID { get; set; } publ ...
- Week 3: Assessing performance 笔记
得到一个模型之后如何评价其性能? training error & generalization error & test error 如何理解generalization error ...
- ABAP小白的成长日记--------helloblog
在外企公司培训了3个月,系统的学习了ABAP,希望开通Blog以后和大家一起深入学习交流.印度人的办事效率是出奇的低,赶超国企公务员.虽然内容cover到了几乎所有R/4的内容,但是还有很多知识没有真 ...
- urllib -- ProxyHandler处理器(代理设置)
import urllib.requestimport randomimport ssl proxy_list = [ {"https" : "196.61.27.58: ...
- php中变量引用&不可与global共同使用
问题来源,新公司debug. 程序中代码大致如下 class Ci { private static $instance = NULL; public $name = 'hello'; public ...
- css单行排版
text-overflow: ellipsis; overflow: hidden; white-space: nowrap;
- 【BZOJ3444】最后的晚餐 乱搞
[BZOJ3444]最后的晚餐 Description [问题背景] 高三的学长们就要离开学校,各奔东西了.某班n人在举行最后的离别晚餐时,饭店老板觉得十分纠结.因为有m名学生偷偷找他,要求和自己暗恋 ...