当前位置: 首页 > article >正文

二、QT和驱动模块实现智能家居-----4、编译Qt程序并运行

一、编译QT程序

第1步 修改界面:

双击左侧的 Forms 里的 mainwindow.ui 文件,打开 Design 视图。

然后如下图所示,从左侧Display Widgets 栏目下,拖动 Label 和 PushPutton到中间的区域。

第2步 添加测试代码:

第3步 构建:

点击菜单栏Build -> Build Project LED_and_TempHumi,开始编译、构建项目。 在构建过程中,会在左下侧是“Compile Output”窗口打印构建信息。如果有错误,请 根据提示出错信息修改,然后重新构建。

第4步 查看构建结果:

                        项目构建成功后,编译好的二进制文件存放在刚刚设置的目录中,可以使用 file 命令查看该 APP 是否被编译为 ARM 架构:

二、运行QT程序 

1、手工运行

使用ADB把可执行程序LED_and_TempHumi放到到开发板上:

在开发板上执行如下命令:

// 1. 关闭原来的GUI 
mv /etc/init.d/*lvgl* /root 
mv /etc/init.d/*hmi* /root 
reboot 
// 2. 禁止LCD黑屏 
echo -e "\033[9;0]" > /dev/tty0 
// 3. 设置QT运行环境 
export QT_QPA_GENERIC_PLUGINS=tslib:/dev/input/event1 
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0 
export QT_QPA_FONTDIR=/usr/lib/fonts/ 
// 4. 运行QT程序 
/root/LED_and_TempHumi

不熟悉mv指令的看这篇文章:

Linux mv 命令-CSDN博客

在屏幕上可以看到如下界面:

点击LED按钮,可以在控制台看到如下输出信息:

2、自动运行

 创建一个文件:/etc/init.d/S99myqt

mkdir /etc/init.d/S99myqt
vi S99myqt

内容如下:

mkdir使用方法:Linux mkdir 命令-CSDN博客

vi编辑器使用方法:vi编辑器的使用(内附快捷键的使用)(超详细)-CSDN博客

#!/bin/sh 
 
start() { 
echo -e "\033[9;0]" > /dev/tty0 
export QT_QPA_GENERIC_PLUGINS=tslib:/dev/input/event1 
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0 
export QT_QPA_FONTDIR=/usr/lib/fonts/ 
 
psplash-write "PROGRESS 95" 
psplash-write "QUIT" 
/root/LED_and_TempHumi  & 
} 
 
stop() { 
    killall LED_and_TempHumi 
} 
 
case "$1" in 
    start) 
        start 
        ;; 
    stop) 
        stop 
        ;; 
    *) 
        echo "Usage: $0 {start| stop|restart}" 
        exit 1 
esac 
 
exit $?

然后reboot重启即可


http://www.kler.cn/a/573657.html

相关文章:

  • conda 更换镜像究极方法
  • Django实现接口token检测的实现方案
  • 计算机网络数据传输探秘:包裹如何在数字世界旅行?
  • 海康摄像头接入流媒体服务器实现https域名代理播放
  • 优选算法的智慧之光:滑动窗口专题(二)
  • 自然语言转SQL之Vanna.ai:AI集成数据库
  • Ansys Zemax | 使用衍射光学器件模拟增强现实 (AR) 系统的出瞳扩展器 (EPE):第 4 部分
  • 报错The default superclass, “jakarta.servlet.http.HttpServlet“(已经配置好tomcat)
  • 理解 React Portal:让你的组件跳出层级限制
  • JSONP解决跨域问题:原理、实现与局限
  • 家政保洁维修行业有没有必要做小程序?
  • MWC 2025 | 紫光展锐联合移远通信推出全面支持R16特性的5G模组RG620UA-EU
  • 【五.LangChain技术与应用】【10.LangChain ChatPromptTemplate(下):复杂场景下的应用】
  • centos8 虚拟机重启后无法识别网卡 ens33 问题原因总结
  • Exoplayer2源码编译FFmpeg拓展模块实现音频软解码
  • Python在NFT市场中的应用:从创建到交易的完整指南
  • Element-Plus悬浮窗模板
  • Kotlin 5种单例模式
  • 【2025.3最新版】从零开始的CSS网页开发学习笔记 1(包含CSS简介 CSS基础选择器 CSS字体属性 CSS文本属性 CSS引入方式)
  • WHAT - 前端异步事件流处理场景梳理