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鼠标:


看大网上的同志用:
TSLIB_QWS_MOUSE_PROTO="TPanel:/dev/event0 USB:/dev/mouse0
双飞燕:
TSLIB_QWS_MOUSE_PROTO="TSLIB:/dev/event0 Itellimouse:/dev/mouse0
TSLIB_QWS_MOUSE_PROTO="TSLIB:/dev/event0 MouseMap:/dev/mouse0

1、环境变量设置:

1.1 微软鼠标(USB无线)

不同的鼠标环境变量设置可能不一样。我的是Microsoft的:
TSLIB_QWS_MOUSE_PROTO="Microsoft:/dev/input/event6 TSLIB:/dev/input/touchsreen0"

     $export TSLIB_QWS_MOUSE_PROTO="linuxtp:/dev/input/event6
TSLIB:/dev/input/touchsreen0"
这样设置,打开Qt程序,开始可见的鼠标箭头,在鼠标点击后消失了。

     $export TSLIB_QWS_MOUSE_PROTO="MouseMan:/dev/input/event6
TSLIB:/dev/input/touchsreen0"
这样设置,打开Qt程序,开始可见的鼠标箭头,鼠标能移动一下下。
     $./qt -qws
hidraw: pid 1884 passed too short report
hidraw: pid 1884 passed too short report
hidraw: pid 1884 passed too short report

hidraw: pid 1884 passed too short report

hidraw: pid 1884 passed too short report
hidraw: pid 1884 passed too short report
hidraw: pid 1884 passed too short report


1.2 雷柏鼠标(USB无线)

我用雷柏的USB无线鼠标:
     $export QWS_MOUSE_PROTO="linuxtp:/dev/hidraw3
TSLIB:/dev/input/touchsreen0"
鼠标能够一定,但是移动很絮乱。无法点击想选中的目标。


解决了鼠标不可用的问题,我还未来得及研究,先写着。

1.3 最新进展,鼠标可用

配置内核,重新编译内核:
#vim arm/arch/omap3_stalker_defconfig
CONFIG_INPUT_MOUSEDEV=y

CONFIG_INPUT_MOUSE=y

不用配置QWS_MOUSE_PROTO,配置过的

#export QWS_MOUSE_PROTO=""

这样鼠标触摸屏都可以用了,鼠标很正常,触摸可以用,但是到处乱跳。

下面三个配置参数没有找到,我也没配置,也可以用的。
CONFIG_INPUT_MOUSEDEV_PSAUX=y 

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"

3、说明:

帖子推荐:
上条验证有用。



=====================================
SNO:
 /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校验程序。

【Linux开发】【Qt开发】Qt界面键盘、触摸屏、鼠标的响应设置的更多相关文章

  1. 第六章 Windows应用程序对键盘与鼠标的响应 P121 6-8

    基于键盘与鼠标应用的程序设计 一.实验目的 1.掌握键盘与鼠标在应用程序中的消息响应机制.   二.实验内容及步骤 实验任务 1.熟悉键盘的消息响应: 2.熟悉鼠标的消息响应: 实验内容 设计一个窗口 ...

  2. Windows应用程序对键盘与鼠标的响应

      编写程序: 设计一个窗口, 当单击鼠标左键时, 窗口中显示"LEFT BUTTON"; 当单击鼠标右键时, 窗口中显示"RIGHT BUTTON"; 当单击 ...

  3. 第六章 Windows应用程序对键盘与鼠标的响应

  4. vc程序设计--对键盘与鼠标的响应(1)

    // WindowsProject2.cpp : 定义应用程序的入口点. // /** * 当按下CTRL键时输出信息:CTRL键被压下 * 当按下K键时输出信息:K键被压下 * 当按下CTRL+K键 ...

  5. 【Linux开发】【Qt开发】配置tslibs触摸屏库环境设置调试对应的设备挂载点

    [Linux开发][Qt开发]配置tslibs触摸屏库环境设置调试对应的设备挂载点 标签(空格分隔): [Linux开发] [Qt开发] 比如: cat /dev/input/mice cat /de ...

  6. 【Qt开发】【Linux开发】Qt程序在嵌入式设备(arm) 上运行,鼠标擦除界面的解决方案

    笔者最近想在arm开发板上,开发一个应用程序,经过网上查询发现qt作为跨平台开发软件很不错,于是便选择了qt开发,笔者的qt版本是4.8.6的.由于arm的主频太低,在arm上进行开发编译,效率会大大 ...

  7. 【Linux开发】【Qt开发】嵌入式Qt程序使用触屏或USB鼠标方式

    上文<嵌入式Qt开发-移植到ARM开发板 >介绍了Qt程序的移植,本文再说下如何使开发板Qt程序使用触摸屏或USB方式进行交互. 之前刚把一个qt程序移植到arm板上成功运行显示时就开心的 ...

  8. Eclipse+Qt开发环境设置(Linux和Win)

    文章摘要: Windows,Linux平台下安装使用Eclipse + QT4.4.3开发环境 Windows,Linux新建project时的配置(不使用QT预置项目类型,而是手工配置) 使用Ecl ...

  9. 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容

    [Qt开发][VS开发][Linux开发]OpenCV.Qt-MinGw.Qt-msvc.VS2010.VS2015.Ubuntu Linux.ARM Linux中几个特别容易混淆的内容 标签:[Qt ...

随机推荐

  1. AI换脸教程:DeepFaceLab使用教程(1.安装及分解视频)

    首先需要选择合适的DeepFaceLab下载(https://www.deepfacelabs.com/list-5-1.html),然后安装相应的显卡驱动,如果已经准备好这些工作,那么恭喜你,终于开 ...

  2. JAVA利用递归的方法删除一个文件夹以及文件夹下所有的子文件

    public static boolean deleteFolder(String url) { File file = new File(url); if (!file.exists()) { re ...

  3. chrome获取页面element的xPath

    chrome真的是强大的工具 1.在chrome打开的页面点击F12,进入开发者模式 2.点击弹出的开发者工具左上角的跟踪箭头,再点击需要跟踪的页面元素,html程序定位到元素在程序中位置 3.选中的 ...

  4. GitHub上传项目时——解决failed to push some refs to git

    原文地址:https://jingyan.baidu.com/article/f3e34a12a25bc8f5ea65354a.html 遇到的问题: error: failed to push so ...

  5. 在centos7.5使用DockerFile构建镜像时报错“Error parsing reference: "microsoft/dotnet:2.2-aspnetcore-runtime AS base" is not a valid repository/tag: invalid reference format”

    运行dockerfile时报出的错误 FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base Error parsing reference: &qu ...

  6. Linux入门培训教程 linux网络编程socket介绍

    一.概念介绍 网络程序分为服务端程序和客户端程序.服务端即提供服务的一方,客户端为请求服务的一方.但实际情况是有些程序的客户端.服务器端角色不是这么明显,即互为Linux培训 客户端和服务端. 我们编 ...

  7. BZOJ 4245: [ONTAK2015]OR-XOR 贪心 + 位运算

    Description 给定一个长度为n的序列a[1],a[2],...,a[n],请将它划分为m段连续的区间,设第i段的费用c[i]为该段内所有数字的异或和,则总费用为c[1] or c[2] or ...

  8. UNIX环境--线程

    一.线程的概念 1.线程在进程中是负责执行代码的一个单位,可以说线程是进程的一部分.一个进程中至少要有一个主线程,进程可以拥有多个线程. 2.线程和进程一样,线程会共享进程的一些信息.比如,代码段.全 ...

  9. Centos7安装Redis3.X

    本文只是简单搭建Redis,为了整合ELK用,后面会详细写. Redis:REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高 ...

  10. 【BZOJ4195】 [Noi2015]程序自动分析

    Description 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3,…代表程序中出现的变量,给定n个形如xi=xj或x ...