iTOP-4412开发板qt4文件的移植和修改

不想你离开。 提交于 2020-01-07 12:09:48

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

在 7.4 小节介绍配置文件的时候,提到迅为制作的触摸库文件“/usr/local/tslib”,迅为

已经将触摸功能编译到 Qt/E4.7.1 的库文件中,开发板可以支持触摸和鼠标功能。

用户在前面运行 helloworld 的时候,会发现触摸和鼠标似乎无法使用,但是在 qt4 中却

能使用触摸和鼠标。

这一小节就介绍如何将 qt4 的触摸功能移植到应用程序 helloworld 中。

11.3.2.1 鼠标和触摸

如下图,打开“etc/init.d/rcS”文件,将最后一行修改为“/bin/qt4_shell &”,这样

在开机之后系统会运行 qt4.shell 程序。修改完成之后,保存退出。

 

然后使用命令“#cp -r bin/qt4 bin/qt4.shell”将“bin/qt4”文件拷贝生成

“bin/qt4.shell”文件,如下图所示。

 

然后打开“bin/qt4.shell”文件,如下图所示。

 

代码“export TSLIB_ROOT=/usr/local/tslib”等调用了触摸和鼠标驱动。

代码“export QTDIR=/opt/qt-4.7.1/”调用了 QtE 的库。

如下图所示,这一段关于鼠标的驱动已经被注释掉了。

 

将上图中与触摸鼠标相关代码修改为下面的代码。

if [! -c /dev/input/event2 ]; then

export QWS_MOUSE_PROTO='Tslib:/dev/input/event2'

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

if [ -e /etc/pointercal ] ; then

fsize=$(/bin/ls -al /etc/pointercal | cut -d' ' -f 23)

echo $fsize

#if [ -s /etc/pointercal ]; then

if [ $fsize -ge "1" ]; then

echo "/etc/pointercal is exit"

else

echo "/etc/pointercal is empty"

rm /etc/pointercal

/usr/local/tslib/bin/ts_calibrate

fi

 

else

echo "/etc/pointercal not found"

/usr/local/tslib/bin/ts_calibrate

fi

else

export QWS_MOUSE_PROTO="MouseMan:/dev/input/mice"

#>/etc/pointercal

fi

#export QWS_MOUSE_PROTO="Tslib

{TSLIB_TSDEVICE}"

#/usr/local/tslib/bin/ts_calibrate

上面代码第一行,有“!”则支持鼠标;触摸应该不能正常使用。

如果去掉“!”则支持触摸。需要先校准,使用上面这段代码只用校准一次即可,不用每

次都校验。

另外如果用户在第一次校准的时候,没有依次点击“十字框”,则触摸文件可能有问题,

那么可以参考 7.3.3 小节,删除掉“/etc/point*”文件,重启开发板再次校准。

修改这段代码之后,最好删除一下“/etc/point*”文件。例如,如果用户刚开始使用的

是触摸,然后改成鼠标控制,因为已经存在“/etc/point*”文件,所以会让人感觉鼠标可以

使用,触摸能够使用但是有问题,这个时候删除“/etc/point*”文件重启即可。

11.3.2.2 字体

如下图所示,接着找到控制字体的参数。

 

如上图,将下面三行删除,避免字体太大导致显示不正常。

*)

export QWS_DISPLAY="LinuxFb:mmWidth91:mmHeight53:1"

;;

11.3.2.3 屏幕翻转

如下图,找到控制屏幕翻转角度的参数

 

“export QWS_DISPLAY=Transformed:Rot0”

修改为:

“export QWS_DISPLAY=Transformed:Rot90”

然后重新启动开发板,开发板起来后会发现屏幕产生了 90 度旋转。

 

1.3.2.4 修改默认启动程序

如下图所示,进入最后一行,红色框默认会启动 QtE 自带的例程,这里修改为

“./bin/helloworld -qws”(其中 helloworld 程序是 11.2 小节生成的,放到/bin 目录

下),红色框中的代码记得注释或者删除。

 

学习嵌入式4412部分视频,希望点个赞噢

 

iTOP4412开发板介绍    https://www.bilibili.com/video/av74453392

iTOP4412开发板系统编程前言    https://www.bilibili.com/video/av75754003

iTOP4412-fastboot烧写Android    https://www.bilibili.com/video/av76115803

iTOP4412-安装虚拟机软件    https://www.bilibili.com/video/av75881580

iTOP4412-创建和配置虚拟机    https://www.bilibili.com/video/av75881653

iTOP4412-获取并安装ubuntu操作系统    https://www.bilibili.com/video/av75881774

iTOP-4412驱动教程一    https://www.bilibili.com/video/av74131033

iTOP-4412驱动教程二    https://www.bilibili.com/video/av74131033?p=2

iTOP-4412驱动教程三    https://www.bilibili.com/video/av74131033?p=3

iTOP-4412开发板之如何扩展不同规格LCD屏幕    https://www.bilibili.com/video/av75870604

itop4412-编译4412对应的uboot    https://www.bilibili.com/video/av76737204

项目实战-GPS定位简介    https://www.bilibili.com/video/av78601887

项目实战-迅为实战教程介绍    https://www.bilibili.com/video/av78601813

项目实战-机车导航-机车导航项目演示    https://www.bilibili.com/video/av78601986

项目实战-机车导航-定制内核显示logo    https://www.bilibili.com/video/av78729131

项目实战-机车导航-修改安卓开机启动动画    https://www.bilibili.com/video/av78972262

项目实战-智能家居-简介    https://www.bilibili.com/video/av80835403

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!