盈鹏飞嵌入式
直播中

zxl_zxl

8年用户 502经验值
擅长:自动化生产线 自动化生产线 模拟技术 自动化生产线 测量仪表 自动化生产线 EMC/EMI设计 自动化生产线 嵌入式技术 自动化生产线 自动化生产线 自动化生产线 自动化生产线 自动化生产线 处理器/DSP 自动化生产线 自动化生产线 自动化生产线 自动化生产线 自动化生产线 自动化生产线 EMC/EMI设计 嵌入式技术 处理器/DSP 自动化生产线 EMC/EMI设计 嵌入式技术 处理器/DSP EMC/EMI设计 嵌入式技术 处理器/DSP 嵌入式技术 处理器/DSP
私信 关注
[话题]

【EVB-335X-II试用体验】之移植QT4.8.4+tslib1.0+基于QT的软键盘

EVB-335X-II试用体验】之移植QT4.8.4+tslib1.0+基于QT的软键盘
EVB-335X-II开发板的QT界面做的非常漂亮,也很专业,尤其是对于输入框,其实现了软键盘的功能,这篇试用报告主要介绍一下对QT4.8.4、tslib1.0的交叉编译,设置基于QT Creator的开发环境,并导入“软键盘”,实现用户输入的无键盘化。
1. 交叉编译tslib1.0
1)安装必要的工具
如果是首次安装Ubuntu虚拟机,在配置完交叉编译环境后,交叉编译tslib时,我们还必须先在Ubuntu虚拟机环境下,安装如下工具软件:
sudo apt-get install libtool
sudo apt-get install autoconf
sudo apt-get install automake
2)拷贝tslib源码到Ubuntu虚拟机
在本试用报告的第三篇试用报告中,详细介绍了开发环境的搭建,我们在Ubuntu虚拟机中安装并配置了samba服务,所以,我通过samba将Windows下的tslib源码拷贝到Ubuntu虚拟机中。拷贝到虚拟机后,执行解压缩:
tar -zxvf tslib-1.0.tar.gz -C/home/vmuser/EVB_335X_II/source
结果如图所示:
QQ图片20160630212707.png
3)生成.configure文件
cd tslib-1.0
./autogen.sh
执行上述命令结果如下:
QQ图片20160630213019.png
3)配置交叉编译规则,生成Makefile
./configure --host=ARM-linux-gnueabihfac_cv_func_malloc_0_nonnull=yes --cache-file=arm-linux-gnueabihf.cache-prefix=/usr/local/tslib
执行结果如下图所示:
QQ图片20160630213240.png
4)编译、安装tslib
执行命令编译tslib
make
执行命令安装tslib
sudo make install
cd /usr/local/tslib
如果如图所示:
QQ图片20160630213513.png
2. 交叉编译QT4.8.4
1)解压源码
将EVB-335X-II开发板光盘资料中的qt源码拷贝到Ubuntu虚拟机,执行解压命令:
tar -zxvf qt-everywhere-opensource-src-4.8.4.tar.gz-C /home/vmuser/EVB_335X_II/source
解压命令结果如图所示:
QQ图片20160630213847.png
2)配置QT4.8.4的编译器、及库文件搜索路径
执行命令,系统qmake.conf文件:
gedit mkspecs/qws/linux-arm-g++/qmake.conf
设置内容如图所示:
QQ图片20160630214417.png
2)配置QT4.8.4,生成Makefile
创建自动配置QT4.8.4的shell脚本:
gedit build_qt.sh
输入内容如图所示:
QQ图片20160630214742.png
为build_qt.sh设置可执行权限:
chmod +x build_qt.sh
执行配置QT4.8.4命令:
./build_qt.sh
生成的Makefile如图所示:
QQ图片20160630215017.png
3)编译、安装QT4.8.4
执行命令:
make file
等待2个小时
安装QT4.8.4
sudo make install
cd /opt/qtenv/QT-4.8.4-arm
ls
结果如图所示:
QQ图片20160630215333.png
3. 安装Qtcreator并配置嵌入式的Qtcreator开发环境
EVB-335X-II提供的QT例程是非Qtcretor版本的,我么可以通过qmake生成pro文件,然后手动打开项目文件添加库文件路径以及头文件路径等信息,但是,对于相对较大的工程来说,使用Qtcreator是最好的选择,通过Qtcreator IDE,我们可以像在Windows下的Viusual studio下开发GUI程序一样方便。
1)安装Qtcreator
首先下载Qtcreator的Linux板安装文件qt-creator-linux-x86-opensource-2.6.1.bin
将其拷贝到Ubuntu虚拟机,给该文件设置可执行权限:
chmom +x qt-creator-linux-x86-opensource-2.6.1.bin
执行安装命令:
./ qt-creator-linux-x86-opensource-2.6.1.bin
界面如图所示:
QQ图片20160630220143.png
点击“Next”,设置安装路径,如图所示:
QQ图片20160630220259.png
一直"Next"下去,直到安装完成。
2)配置Qtcreator
切换到qtcreator的安装目录
cd /home/vmuser/qtcreator-2.6.1/bin
启动qtcreator
./qtcreator
启动画面如图所示:
QQ图片20160630220724.png
在菜单栏选择工具——选择菜单:如图所示:
QQ图片20160630220812.png
弹出选项配置对话框看,如图所示:
QQ图片20160630221140.png
定位到如上图所示的“编译器”标签,选Add,选择GCC,设置如下:
QQ图片20160630221213.png
选择Qt版本标签,选择添加我们第二节交叉编译好的qmake,设置如图所示:
QQ图片20160630221402.png
选择构建套件(Kit),设置如下:
QQ图片20160630221541.png
最后点击“确定”按钮,退出设置。
4. 创建带软键盘的QT测试程序
移植好QT4.8.4,并配置好了Qtcreator IDE开发环境,我们创建一个支持“软键盘”的QT测试程序。
1)创建测试工程
Qtcreato环境下,选择菜单File,选择新建工程,如图所示:
QQ图片20160630222032.png
在工程向导中选择“Qt GUI程序”,如图所示:
QQ图片20160630222155.png
点击“确定”按钮,设置项目名,及项目保存路径,如图所示:
QQ图片20160630222343.png
点击下一步,选择编译平台,如图所示:
QQ图片20160630222446.png
点击下一步,选择界面基类,如图所示:
QQ图片20160630232743.png
点击下一步,点击完成按钮,完成项目的生成。
2)设计软件界面并编码程序
设计软件界面如图所示:
QQ图片20160630232830.png
实现一个简单的加法运算。
编写“=”按钮的命令函数如下:
QQ图片20160630230606.png
3)为QT的输入框添加软键盘的支持
将本帖附件中的软键盘源码拷贝到Ubuntu虚拟机当前工程目录下,执行如下文件添加操作:
QQ图片20160630224410.png
选择keyPad目录下的所有文件,如图所示:
QQ图片20160630224518.png
设置工程头文件,如图所示:
QQ图片20160630224647.png
设置工程的CPP文件如图所示:
QQ图片20160630224833.png
4)编译工程、拷贝到NFS共享目录
执行编译命令,生成add_qt可执行文件,如图所示:
QQ图片20160630225133.png
执行命令,将add_qt拷贝到NFS共享目录:
cp add_qt /nfsshare
5EVB-335X-II上电测试软件
给EVB-335X-II上电,挂载NFS
ifconfig eth0 192.168.1.112
mount -t nfs 192.169.1.102:/nfsshare /mnt-o nolock
cd /mnt
ls
执行结果如图所示:
QQ图片20160630225452.png
执行命令,在EVB-335X-II开发板上执行命令,启动add_qt程序,如图所示:
./add_qt
运行结果如图所示:
20160630_225857.jpg
点击变量“a”下面的输入框,弹出软键盘,然后输入数字10,如图所示:
20160630_225929.jpg
点击变量“b”的输入框,弹出软键盘,输入数字20,如图所示:
20160630_225943.jpg
点击“=”按钮,得出计算结果30,如图所示:
20160630_230504.jpg
5. 小结
本篇试用报告,介绍了移植QT4.8.4的方法,并介绍了安装、配置Qtcreator IDE开发环境,将keyPad软键盘移植到了的实际的项目中。通过这一系列的操作,我们现实了GUI程序在EVB-335X-II上开发的基本工作,通过添加软键盘,进一步增强了人机交互界面程序的功能,为后续的GUI功能测试打下较好的基础。

    keyPad.rar (2016-6-30 23:34 上传)

    4.04 KB, 下载次数: 32

回帖(1)

将军问鼎

2017-7-5 17:30:14
这个软键盘非常好,正好用的到,谢谢,亲分享
举报

更多回帖

发帖
×
20
完善资料,
赚取积分