当前位置:   article > 正文

qmake linux 命令行安装_嵌入式Linux系列第12篇:LCD显示及运行QT

linux qt you need qmake in the path

1.引言

有些嵌入式设备会有一块显示屏,用来显示各种图案、按钮等元素,单片机里常见的UI有emWin、TouchGFX等。Linux里常用QT,Qt是一个跨平台个C++应用程序开发框架。广泛用于开发GUI程序。QT在Windows平台下用来做一些上位机也非常好,使用起来方便简单,同时又开源免费。本篇给大家简单介绍NUC972 平台QT的移植及简单示例,希望对大家有所帮助。

2.环境介绍

2.1.硬件

1) NUC972开发板:

2) 4.3寸电阻屏

2.2.软件

1) Uboot继续使用之前文章用的,无需改动。

2) Kernel在上一篇基础上,要做一定的修改。

3) Rootfs在上一篇基础上,要做一定的修改。

3.内核配置

· 增加对4.3寸电阻屏的支持

1)修改/arch/arm/mach-nuc970/dev.c文件, nuc970fb_lcd_info结构体中增加以下4.3寸屏的支持,

a963a7d377740bee2269b94b71d5150c.png
64d3c357a002a30ab42d9a4238774456.png

2)另外/drivers/video/Kconfig: 中增加相关配置

10c7c4f8b1d95b8e987ff168e61a744e.png

· 内核配置

经过以上两个步骤之后,在make menuconfig之后,选择上

449b97333514434aa5ac21860dd4c2a0.png
bee193a1fed4aec71d470f1c6e3da185.png

如果要将Linux的企鹅logo显示出来,需要,

43f987a907b9254f40381da3a527e09e.png

最后还有一点

还有一个背光的问题,

5bd4fd9a9e2538557e815f87bfd64804.png

PG3需要设置为高电平,可以开机启动脚本添加下面几句话:

echo 195 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio195 /direction

echo 1 > /sys/class/gpio/gpio195 /value

图标就显示出来了

b2e15ef3b7af6af990267e8777042a5e.png

经过以上步骤LCD屏幕的显示配置就完成了。

另外为了支持触摸,还得做修改:

16704c727e308f137a55903aaf4921ed.png
535ef4effd1dad34f120a4ca7af2f065.png
ec826e929e47e59562858b3f19c25da8.png

4.Buildroot配置

· QT5配置

62ff5f72872df373ecb6ce9ba0a9a034.png

5.QT工程搭建

下面看一下我们自己编译的qt例子能不能在arm板子上跑起来。

主要包括以下步骤:

1) 在Ubuntu下安装Qt软件,我安装的是qt-opensource-linux-x64-5.10.0.run,在QT官网可以下载到

然后在Ubuntu命令行窗口中./ qt-opensource-linux-x64-5.10.0.run,就会弹出安装界面,为了节约空间,只选择Tools就可以

9267153fea34b7a3ef2dd5dc018aecf5.png

2) 安装完成后,打开QT,你如果不知道在哪,点击搜索,输入qt就能看到,在单击qt图标就可以打开了,界面和在windows下打开qt的界面一样。然后需要配置交叉编译的环境

8edfb19d16d1f75d3ed7d5f69b776c82.png

3) 下面新建一个简单的QT工程,为了照顾初次接触QT的新手,我尽量描述的详细些

a) 新建工程,选择文件-新建文件或项目

77365f56ef4cf01c8b0dc01742fee584.png

接下来是项目名称和路径

77328ee96a68fbf50ceb7a514f84cef7.png

然后很重要的是选择和配置Kits,

91c1c33e4c357f292c3792ad3e1a0003.png

这里面有两处一定要设置正确:

一处是Qt Version,选择下图Buildroot目录中的qmake路径

4c928deb5981a4f02dfa323f12fd2f0b.png

另外一处是编译器里添加交叉编译器

20683658b0e43cfaf6df88de9fe5982e.png
5a1ee0fbb6c9621dd685685cead2e804.png

b)点击mainwindow.ui文件,这里就可以进行图形化的配置了,放入两个元素

f5bf416d5aa4eb8411587ff554d904cd.png
fefa63ddd5e7307c7dfac1a5d9cee77a.png

c)编译

1f7891d3675951638a355dec6cd04306.png

放入板子中运行,如果直接执行会报如下错误

# ./test

This application failed to start because it could not find or load the Qt platform plugin "eglfs"

in "".

Available platform plugins are: linuxfb, minimal, offscreen.

Reinstalling the application may fix this problem.

Aborted

需要在后面加入-platform linuxfb,执行./test -platform linuxfb,显示如下:

e2bc9186d20c859f1e61840d099ff958.png

6.结束语

本篇为大家介绍了Linux下QT的简单使用,让大家对Linux下QT移植和交叉编译有一个感性的认识,完善的功能由于时间关系没有去研究,欢迎大家多交流。

TopSemic 让芯片使用更简单

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/292151
推荐阅读
相关标签
  

闽ICP备14008679号