您的位置:首页 > 编程语言 > Qt开发

omap3530 移植 qt2.2.0 触摸屏会飘 QWS_MOUSE_PROTO 决定?

2011-09-07 20:20 549 查看


omap3530 移植 qt2.2.0 触摸屏会飘 QWS_MOUSE_PROTO 决定?

2011-03-18 13:58:01| 分类: TI(OMAP3530)|字号 订阅

#!/bin/sh
export TSLIB_TSDEVICE=/dev/input/event1//可以查 dev 中 cat name 为touchscreen 为ads7468的
export TSLIB_CONFFILE=/usr/local/etc/ts.conf //配置文件存放位置
export TSLIB_PLUGINDIR=/usr/local/lib/ts //库位置
export TSLIB_CALIBFILE=/etc/pointercal //校准数据文件
export QTDIR=/opt/Qtopia
export QPEDIR=/opt/Qtopia
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH

#TS_INFO_FILE=/sys/devices/virtual/input/input0/uevent
TS_INFO_FILE=/sys/class/input/input1/uevent //在终端输入命令: cat /proc/bus/input/devices 查看那个uevent 中有TouchScreen
if [ -e $TS_INFO_FILE -a "/bin/grep -q TouchScreen < $TS_INFO_FILE" ]; then // 判断uevent文件中是否有 TouchScreen

#export QWS_MOUSE_PROTO="TPanel:/dev/input/event1 USB:/dev/input/mice" //鼠标与触摸屏共存
export QWS_MOUSE_PROTO="TPanel:/dev/input/event1"//只有触摸屏有效是不会飘

if [ -e /etc/pointercal -a ! -s /etc/pointercal ] ; then
rm /etc/pointercal
fi
else
export QWS_MOUSE_PROTO="USB:/dev/input/mice"
>/etc/pointercal
fi
unset TS_INFO_FILE

export QWS_KEYBOARD=TTY:/dev/tty1
export KDEDIR=/opt/kde

export HOME=/root

exec $QPEDIR/bin/qpe 1>/dev/null 2>/dev/null

真对omap3530 判断是否有usb mouse

/bin/qtopia 做到的修改:

#!/bin/sh
export TSLIB_TSDEVICE=/dev/input/event1//可以查 dev 中 cat name 为touchscreen 为ads7468的
export TSLIB_CONFFILE=/usr/local/etc/ts.conf //配置文件存放位置
export TSLIB_PLUGINDIR=/usr/local/lib/ts //库位置
export TSLIB_CALIBFILE=/etc/pointercal //校准数据文件
export QTDIR=/opt/Qtopia
export QPEDIR=/opt/Qtopia
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH

//=========================修改启发====================================
在插入usb鼠标后:
在终端输入命令: cat /proc/bus/input/devices



I: Bus=0003 Vendor=046d Product=c016 Version=0110
N: Name="Logitech Optical USB Mouse"
P: Phys=usb-ehci-omap.0-1.4/input0
S: Sysfs=/devices/platform/ehci-omap.0/usb1/1-1/1-1.4/1-1.4:1.0/input/input2
U: Uniq=
H: Handlers=mouse1 event2 evbug
B: EV=17
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=103
B: MSC=10

红字部分 发现是在 /input/input2
通过 :cat /sys/class/input/input2/uevent

PRODUCT=3/46d/c016/110
NAME="Logitech Optical USB Mouse"
PHYS="usb-ehci-omap.0-1.4/input0"
UNIQ=""
EV==17
KEY==70000 0 0 0 0 0 0 0 0
REL==103
MSC==10
MODALIAS=input:b0003v046DpC016e0110-e0,1,2,4,k110,111,112,r0,1,8,am4,lsfw

由此可以通过判断 /sys/class/input/input2/uevent 文件是否有 Mouse 这个关键字来 设置不同
QWS_MOUSE_PROTO

TS_INFO_FILE=/sys/class/input/input2/uevent
if [ -e $TS_INFO_FILE -a "/bin/grep -q Mouse < $TS_INFO_FILE" ]; then // 判断uevent文件中是否有 TouchScreen

export QWS_MOUSE_PROTO="TPanel:/dev/input/event1 USB:/dev/input/mice" //鼠标与触摸屏共存

else
export QWS_MOUSE_PROTO="TPanel:/dev/input/event1"
fi

if [ -e /etc/pointercal -a ! -s /etc/pointercal ] ; then

rm /etc/pointercal
fi

unset TS_INFO_FILE

export QWS_KEYBOARD=TTY:/dev/tty1
export KDEDIR=/opt/kde

export HOME=/root

exec $QPEDIR/bin/qpe 1>/dev/null 2>/dev/null
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: