RK3568开发笔记(十):开发板buildroot固件移植开发的应用Demo,启动全屏显示

本文主要是介绍RK3568开发笔记(十):开发板buildroot固件移植开发的应用Demo,启动全屏显示,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/133021990

红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…

瑞芯微开发专栏

上一篇:《RK3568开发笔记(九):开发板buildroot固件调通RS485口,运行项目中RS485协议调试工具Demo》
下一篇:《RK3568开发笔记(十一):开发版buildroot固件移植一个ffmpeg播放rtsp的播放器Demo》


前言

  上一篇,移植应用前的通讯接口工作和全屏工作都已经完成了。本篇移植开发的商业应用。


交叉编译好应用

  (略),参照《RK3568开发笔记(八):开发板烧写buildroot固件(支持hdmi屏),搭建Qt交叉编译开发环境,编译一个Demo,目标板运行Demo测试》


解决全屏标题栏占用问题

  交叉编译好了应用,放过去,跑起来没问题,也可以正常显示,但是一旦操作就出现被默认的qt程序占用。
  这是默认的应用:
  在这里插入图片描述
  这是正常全屏应用:
  在这里插入图片描述

  这是被占用之后的(点击任何地方,让应用获取焦点就这样了):
  在这里插入图片描述

  所以,这里理论上将原来的qt应用停掉,用我们的应用作为启动应用就可以了。


Buildroot固件系统将设置启动Qt应用

步骤一:定位到Qt启动的地方,验证标题栏

  一般linux系统大家会默认都在rcS里面加入一个界面启动脚本,界面启动脚本也在/etc/inid.d的S???里面。
  在这里插入图片描述

  首先我们先看下这个桌面进程是哪一个,先top,看到与i个QLauncher,杀掉他试试:
  在这里插入图片描述

Kill -9 685

  变灰了,看起来标题栏还是在:
  在这里插入图片描述

  于是我们,跑一下自己的应用测试验证一下,确实点击之后,标题栏还是被占用了,所以不是QLauncher的问题,是有一个灰色底色+任务栏,称之为控制台吧。

步骤二:定位到控制台,验证启动应用

  这个控制台可能是weton或者哪里的,不太清楚,咨询了官方查看了文档,好像是weston的:
  在这里插入图片描述

  所以直接干掉看效果:
  在这里插入图片描述

  干587

kill -9 587

  结果如下图:
  在这里插入图片描述

  确实是黑了,但是因此,我们使用界面的应用也启动不了:
  在这里插入图片描述

  这里陷入两难了,寻求官方支持。

步骤三:寻求官方支持求改weston的配置

  修改/etc/xdg/weston/weston.ini
  在这里插入图片描述

  在这里插入图片描述

  然后,再重启开发板测试:
  在这里插入图片描述

  再启动自己的应用:
  在这里插入图片描述

  可以启动了

步骤四:修改为自己的程序为开机启动

  前面已经定位了QLauncher,那么替换一下全路径就可以了。
  注意:这里要注意若是应用中使用了相对路径会直接换成调用脚本的路径为起始路径,这事经常容易犯的错误,且一时半伙定位不到,所以建议开发程序的时候,使用到路径一定要使用QApplication::applicationDir去获取可执行文件的类路径作为起始路径)
  在这里插入图片描述

  修改后为:
  在这里插入图片描述

  然后重启:

rboot

  重启就是我们的应用了,已经实测验证完了。


应用卡顿

  不用想就是RS485的上下拉过程了,因为应用的界面都做了二级缓存,所有的界面操作除开时钟之外,目前只有探测到变化才会修改一次界面值,而多次发送同样的数据,理论上不存在,以这个目标去论证。
  官方的usleep,睡眠是100字节才睡眠0.17ms左右,10016(107+2)约等于0.17ms,这样检测是不够的,直接使用QThread::msleep睡眠,之前做的海思的也是这个问题,具体值要根据测试来,这边测试最终是2ms的时候,不卡顿,当然,可以尝试1ms。
  在这里插入图片描述

  收发即使,收-即使处理了,发-PC即使收到了。
  手痒,测试一下1ms试试,发现1ms更顺利,所以改为1ms了。
  (这里不是105,回发的只有7字节,等于直接就是1ms之后就拉低了)


小结

  嵌入式linux系统开发就是软硬系统结合,问题出现确实比较多,而且涉猎的知识面比较广,对于基础也有一定要求的入门门槛。


上一篇:《RK3568开发笔记(九):开发板buildroot固件调通RS485口,运行项目中RS485协议调试工具Demo》
下一篇:《RK3568开发笔记(十一):开发版buildroot固件移植一个ffmpeg播放rtsp的播放器Demo》


若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/133021990

这篇关于RK3568开发笔记(十):开发板buildroot固件移植开发的应用Demo,启动全屏显示的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/703879

相关文章

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof