点击上方“嵌入式应用研究院”,选择“置顶/星标公众号”

干货福利,第一时间送达!

来源|CSDN-煜个头头

整理&排版|嵌入式应用研究院

QT是目前主流的UI界面设计软件之一,Linux系统也支持QT应用,而且提供了好多便捷的插口。所以有必要记录一下基于QT,在LCD屏幕上实现UI界面功能的各类细节。

学习视频地址:

1.系统配置

出于便捷,我采用的是正点原子提供的出厂系统查看linux是什么系统,上面早已安装并配置好了QT,可以直接烧录QT程序进行功能实现。

上面早已写入了正点原子的出厂UI界面linux下qt的安装长春linux培训,所以接出来须要对其进行更改。

2.配置QtCreator

交叉编译工作的安装参考正点原子的相关文档,这儿不再赘言。

启动

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

启动的时侯须要加载交叉编译器,所以须要在qtcreator.sh中插入对应指令

sudo vi /opt/QT5.12.12/Tools/QtCreator/bin/qtcreator.sh # 以自己电脑的QT安装路径为准

在第一行插入以下指令

source /opt/st/stm32mp1/3.1-snapshot/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi

linux下qt应用程序_linux下qt编程入门_linux下qt的安装

启动的时侯采用以下指令(也可以将其写入到.sh文件以便启动)

/opt/Qt5.12.9/Tools/QtCreator/bin/qtcreator.sh &

编译器配置

linux下qt的安装_linux下qt编程入门_linux下qt应用程序

linux下qt的安装_linux下qt编程入门_linux下qt应用程序

linux下qt的安装_linux下qt应用程序_linux下qt编程入门

linux下qt应用程序_linux下qt编程入门_linux下qt的安装

linux下qt编程入门_linux下qt应用程序_linux下qt的安装

新建项目,并选择以下的编译套件

linux下qt编程入门_linux下qt的安装_linux下qt应用程序

编译

linux下qt编程入门_linux下qt应用程序_linux下qt的安装

远程调试

linux下qt应用程序_linux下qt编程入门_linux下qt的安装

linux下qt的安装_linux下qt应用程序_linux下qt编程入门

linux下qt编程入门_linux下qt应用程序_linux下qt的安装

linux下qt的安装_linux下qt编程入门_linux下qt应用程序

linux下qt编程入门_linux下qt应用程序_linux下qt的安装

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

linux下qt编程入门_linux下qt应用程序_linux下qt的安装

配置Linuxfb/eglfs形式调试(只需更改Commandlinearguments为linuxfb或eglfs)

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

注意:UploadFilesviaSFTP这一步也要添加,否则不会手动上传新代码至开发板

linux下qt的安装_linux下qt应用程序_linux下qt编程入门

注意:linuxfb采用纯软件渲染,eglfs采用GPU渲染,前者显示会更流畅。

不过eglfs只有在采用EMMC启动Linux内核和根文件系统时可用,对于远程网路调试只能使用linuxfb形式。

配置完成后,运行程序的时侯,QtCreator会把程序发送至开发板,之后开始运行。

Ubuntu本机调试

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

3.更改内核启动LOGO

(1)更改logo显示源码

更改fbcon.c文件下的fbcon_prepare_logo函数

linux下qt的安装_linux下qt编程入门_linux下qt应用程序

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

更改fbmem.c下的fb_show_logo_line函数

linux下qt应用程序_linux下qt的安装_linux下qt编程入门

(2)打算一张适配屏幕大小的.png图片

linux下qt的安装_linux下qt编程入门_linux下qt应用程序

(3)使用netpbm图象转换库处理图片

pngtopnm logo.png > logo.pnm # 转换格式pnmquant 224 logo.pnm > logo_224.pnm # 修改颜色通道数量pnmtoplainpnm logo_224.pnm > logo_linux_clut224.ppm # 转换格式

**(4)将文件放置在指定路径**

sudo cp logo_linux_clut224.ppm 内核路径/drivers/video/logo

重新编译内核后,使用新的内核启动开发板即可。

4.配置自启动UI界面

关掉正点原子的出厂UI服务

linux下qt的安装_linux下qt应用程序_linux下qt编程入门

systemctl disable atk-qtapp-start.service # 执行此项关闭Qt桌面服务,下次启动不生效systemctl enable atk-qtapp-start.service # 执行此项开启Qt桌面服务systemctl stop atk-qtapp-start.service # 暂时停止Qt桌面服务,重启服务用restart

启动UI界面指令

/usr/local/test -platform linuxfb # 以自己放置UI程序的路径为准

编撰自启动服务

cd /lib/systemd/systemtouch jozen-qt-start.servicevi jozen-qt-start.service
#添加以下内容[Unit]Description=Run a Custom Script at StartupAfter=default.target
[Service]ExecStart=/usr/local/test -platform linuxfb
[Install]WantedBy=default.target

编撰完成后linux下qt的安装,按前面的syscmd指令使能即可。

版权申明:本文为CSDN博主「煜个头头」的原创文章,遵守CC4.0BY-SA版权合同,转载请附上原文出处链接及本申明。

原文链接:

往期精彩

假如认为本次分享的文章对您有帮助,随手点[在看]并转发分享,也是对我的支持。

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复