一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于RK3576開(kāi)發(fā)板的QT GUI例程

ljx2016 ? 來(lái)源:ljx2016 ? 作者:ljx2016 ? 2025-05-14 10:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 方案簡(jiǎn)介

EASY EAI Orin-Nano安裝的是帶有xfce桌面環(huán)境的Debian系統(tǒng),因此在上面運(yùn)行的Qt應(yīng)用程序可被窗口管理器接管。如下圖所示:

wKgZO2gj__yAYVOCAA2tW7D0H4M200.png

而且RK3576的CPU性能也十分強(qiáng)大,因此Qt應(yīng)用程序可直接在開(kāi)發(fā)板上進(jìn)行編譯,這樣能達(dá)到最優(yōu)的兼容性。

2. 快速上手

如果您初次閱讀此文檔,請(qǐng)閱讀:《入門(mén)指南/源碼管理及編程介紹/源碼工程管理》,按需管理自己工程源碼(注:此文檔必看,并建議采用【遠(yuǎn)程掛載管理】方式,否則有代碼丟失風(fēng)險(xiǎn)?。。。?/p>

2.1 源碼工程下載

先在PC虛擬機(jī)定位到nfs服務(wù)目錄,再在目錄中創(chuàng)建存放源碼倉(cāng)庫(kù)的管理目錄:

cd ~/nfsroot
mkdir GitHub
cd GitHub

再通過(guò)git工具,在管理目錄內(nèi)克隆遠(yuǎn)程倉(cāng)庫(kù)(需要設(shè)備能對(duì)外網(wǎng)進(jìn)行訪(fǎng)問(wèn))

git clone https://github.com/EASY-EAI/EASY-EAI-Toolkit-3576.git
wKgZPGgj__yAPipiAAFHkLhl81w491.png

注:

* 此處可能會(huì)因網(wǎng)絡(luò)原因造成卡頓,請(qǐng)耐心等待。

* 如果實(shí)在要在gitHub網(wǎng)頁(yè)上下載,也要把整個(gè)倉(cāng)庫(kù)下載下來(lái),不能單獨(dú)下載本實(shí)例對(duì)應(yīng)的目錄。

2.2 開(kāi)發(fā)環(huán)境搭建

通過(guò)adb shell進(jìn)入板卡開(kāi)發(fā)環(huán)境,如下圖所示。

wKgZO2gj__yAJH86AAC7JgRVz1M865.png

若未曾在此開(kāi)發(fā)板上開(kāi)發(fā)過(guò)Qt程序,需要先在開(kāi)發(fā)板上安裝以下幾個(gè)軟件包:

sudo apt-get update
sudo apt-get install qtbase5-dev

通過(guò)以下命令,把nfs目錄掛載上nfs服務(wù)器。

mount -t nfs -o nolock : /home/orin-nano/Desktop/nfs/
wKgZPGgj__2AVXLLAAD6_a7KK6A217.png

2.3 例程編譯

然后定位到nfs的掛載目錄,再在目錄中創(chuàng)建存放源碼倉(cāng)庫(kù)的管理目錄:

cd /home/orin-nano/Desktop/nfs/GitHub

進(jìn)入到對(duì)應(yīng)的開(kāi)發(fā)實(shí)例目錄執(zhí)行編譯操作,具體命令如下所示:

cd EASY-EAI-Toolkit-3576/UiSolutions/QDemo
./build.sh
wKgZO2gj__2ATf0fAAN6KYlRfJs881.png

2.4 例程運(yùn)行及效果

執(zhí)行下方命令,運(yùn)行示例程序:

./Release/QDemo

執(zhí)行例程,桌面會(huì)彈出一個(gè)基于Qt庫(kù)開(kāi)發(fā)的應(yīng)用窗口,效果如下所示。

wKgZPGgj__2ADj7qABFeytxG59w616.png

3. 開(kāi)發(fā)指南

3.1 Toolkit倉(cāng)庫(kù)介紹

wKgZO2gj__6AcyieAADY23V3S84438.png

3.2 示例文件&目錄結(jié)構(gòu)

3.2.1 開(kāi)發(fā)實(shí)例介紹

每個(gè)解決方案就是一個(gè)獨(dú)立的項(xiàng)目,項(xiàng)目使用qmake構(gòu)建自動(dòng)編譯部署。一個(gè)最簡(jiǎn)單的Qt項(xiàng)目至少要包含以下元素:build.sh、*.pro、main.cpp、mainWidget.ui、mainWidget.cpp、mainWidget.h,如下所示。

wKgZPGgj__6AB27lAADBkb-blFw153.png

具體介紹如下所示。

組成部分 描述
build.sh 編譯腳本,用于管理生成可執(zhí)行文件后的部署準(zhǔn)備工作,用戶(hù)可自定義shell命令
QDemo.pro 工程管理文件,用于組織整個(gè)工程結(jié)構(gòu),指導(dǎo)qmake生成Makefile。
QResource 用于存放貼圖資源,樣式表資源等。
resource.qrc 工程管理文件,用于組織管理貼圖資源,樣式表資源等。
QSrcCode 用于存放工程源代碼。
api.pri 工程管理文件,用于組織管理“對(duì)easyeai-api再封裝的子模塊”相關(guān)源碼。
common.pri 工程管理文件,用于組織管理“第三方子模塊”或“業(yè)務(wù)邏輯”相關(guān)源碼。
ui.pri 工程管理文件,用于組織管理“UI界面效果”相關(guān)源碼。

3.3 *.pro和*.pri文件解析

3.3.1 *.pro文件:

第一部分為輸出配置,如下所示:

wKgZO2gj__6AdPcWAAAWpouPW1c987.png

配置信息如下所示。

配置項(xiàng) 描述
TARGET 輸出文件名稱(chēng)
TEMPLATE 輸出文件類(lèi)型,app為可執(zhí)行文件,lib為庫(kù)文件

第二部分為全局編譯選項(xiàng)配置,如下所示:

wKgZO2gj__-AT-glAAAbOERaZ30930.png

配置項(xiàng) 描述
LIBS 全局鏈接庫(kù),通常是本Ubuntu系統(tǒng)提供的庫(kù)
QMAKE_CXXFLAGS 全局C++編譯參數(shù),可傳入一些宏或者C++編譯配置

第三部分為加載自定義子模塊,如下所示:

wKgZPGgj__-AS-PqAAAeLrZXN14003.png

第四部分為加載資源管理,如下所示:

wKgZO2gj__-ACru0AAAZv1RCaP4406.png

第五部分為指定文件輸出目錄,如下所示:

wKgZPGgj__-AEu3_AAAav9Nq7jU277.png

3.3.2 api.pri文件:

本工程文件是對(duì)我司的功能組件庫(kù)的管理,若用戶(hù)有“對(duì)我司的功能組件庫(kù)進(jìn)行再封裝”的需求,則可通過(guò)本文件來(lái)管理。(針對(duì)當(dāng)前方案進(jìn)行:配置EASY EAI API頭文件目錄、庫(kù)文件目錄以及配置庫(kù)鏈接參數(shù)):

wKgZO2gkAACAMbWWAADZk8010NE099.png

配置信息如下所示。

配置項(xiàng) 描述
COMMONAPI_DIR 自定義的變量,指定好common接口的位置,維護(hù)起來(lái)更簡(jiǎn)潔。
ALGORITHM_DIR 自定義的變量,指定好algorithm接口的位置,維護(hù)起來(lái)更簡(jiǎn)潔。
INCLUDEPATH QT默認(rèn)變量,向工程指定頭文件的查找路徑。
HEADERS QT默認(rèn)變量,向工程添加需要編譯的頭文件。
SOURCES QT默認(rèn)變量,向工程添加需要編譯的源文件。
LIBS QT默認(rèn)變量,指定對(duì)應(yīng)的easyeai-api庫(kù)文件以及其依賴(lài)的編譯參數(shù),不清楚該如何填寫(xiě)可以進(jìn)入對(duì)應(yīng)接口的api.cmake里查看,并且要注意引用的先后順序關(guān)系。

3.3.3 common.pri文件:

本工程文件是第三方的庫(kù)的配置(針對(duì)當(dāng)前方案進(jìn)行:配置第三方頭文件目錄、庫(kù)文件目錄、配置第三方庫(kù)鏈接參數(shù)以及配置源碼目錄):

wKgZPGgkAACAdF0KAABDc_c66mM165.png

配置信息如下所示。

配置項(xiàng) 描述
INCLUDEPATH 向工程指定頭文件的查找路徑
SOURCES 向工程添加需要編譯的源文件
HEADERS 向工程添加需要編譯的頭文件

3.3.4 ui.pri文件:

本工程文件是交互界面相關(guān)的源碼文件配置,內(nèi)容如下所示:

wKgZO2gkAACAH50uAABOt_iahEw868.png

配置項(xiàng)如下所示。

配置項(xiàng) 需求
SOURCES 向工程添加需要編譯的源文件
HEADERS 向工程添加需要編譯的頭文件
FORMS 向工程添加Qt設(shè)計(jì)師產(chǎn)生的界面文件

3.4 build.sh編譯腳本:

3.4.1 路徑定位部分

第一部分用于提取目錄用于編譯操作,內(nèi)容如下所示:(進(jìn)入build.sh腳本所在目錄,并且提取當(dāng)前目錄絕對(duì)路徑,提取當(dāng)前目錄名稱(chēng))

wKgZPGgkAACAWjcCAAArNYW9H20254.png

3.4.2 編譯參數(shù)部分

第二部分清除操作,清除目錄為Release,內(nèi)容如下所示:(執(zhí)行build.sh腳本時(shí),帶入了參數(shù)“clear”,則清空編譯輸出;帶入了參數(shù)“all”,則重新編譯)

wKgZO2gkAACAWwhSAAA4lCwTIaM566.png

3.4.3 編譯操作

第三部分,編譯直接調(diào)用qmake,內(nèi)容如下所示:(重新編譯,并生成部署目錄)

wKgZPGgkAAGATvwbAAAVuQbCSCM454.png


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5682

    瀏覽量

    104818
  • Qt
    Qt
    +關(guān)注

    關(guān)注

    2

    文章

    314

    瀏覽量

    39081
  • GUI
    GUI
    +關(guān)注

    關(guān)注

    3

    文章

    679

    瀏覽量

    41242
  • rk3576
    +關(guān)注

    關(guān)注

    1

    文章

    175

    瀏覽量

    732
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于RK3576開(kāi)發(fā)板的WDT看門(mén)狗使用說(shuō)明

    RK3576開(kāi)發(fā)板的WDT使用說(shuō)明
    的頭像 發(fā)表于 05-06 17:15 ?647次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的WDT看門(mén)狗使用說(shuō)明

    基于RK3576開(kāi)發(fā)板的PCIE固態(tài)硬盤(pán)使用說(shuō)明

    RK3576開(kāi)發(fā)板的PICE固態(tài)硬盤(pán)使用方法
    的頭像 發(fā)表于 05-06 17:33 ?1366次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的PCIE固態(tài)硬盤(pán)使用說(shuō)明

    基于RK3576開(kāi)發(fā)板的TF卡槽使用說(shuō)明

    RK3576開(kāi)發(fā)板使用TF卡槽
    的頭像 發(fā)表于 05-07 09:24 ?761次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的TF卡槽使用說(shuō)明

    基于RK3576開(kāi)發(fā)板的PWN使用說(shuō)明

    RK3576開(kāi)發(fā)板使用PWN教程及Demo
    的頭像 發(fā)表于 05-07 14:07 ?1286次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的PWN使用說(shuō)明

    基于RK3576開(kāi)發(fā)板的RTC使用說(shuō)明

    文章主要展示RK3576開(kāi)發(fā)板的RTC信息和快速上手例程
    的頭像 發(fā)表于 05-07 15:04 ?818次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的RTC使用說(shuō)明

    基于RK3576開(kāi)發(fā)板的人臉識(shí)別算法

    RK3576開(kāi)發(fā)板展示人臉識(shí)別算法例程和API說(shuō)明
    的頭像 發(fā)表于 05-07 16:48 ?1942次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的人臉識(shí)別算法

    米爾RK3576開(kāi)發(fā)板特惠活動(dòng)!

    近日,米爾電子發(fā)布基于瑞芯微RK3576核心開(kāi)發(fā)板,RK3576作為國(guó)產(chǎn)熱門(mén)處理器,其高性能數(shù)據(jù)處理能力、領(lǐng)先的AI智能分析、強(qiáng)大的擴(kuò)展性與兼容性受到廣大
    的頭像 發(fā)表于 11-12 01:00 ?864次閱讀
    米爾<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>特惠活動(dòng)!

    敬請(qǐng)期待 | 迅為RK3576開(kāi)發(fā)板即將發(fā)布

    敬請(qǐng)期待 | 迅為RK3576開(kāi)發(fā)板即將發(fā)布
    的頭像 發(fā)表于 11-22 15:13 ?629次閱讀
    敬請(qǐng)期待 | 迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>即將發(fā)布

    迅為RK3576開(kāi)發(fā)板核心與底板接口硬件介紹

    迅為RK3576開(kāi)發(fā)板核心與底板接口硬件介紹
    的頭像 發(fā)表于 01-14 15:15 ?1527次閱讀
    迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>核心<b class='flag-5'>板</b>與底板接口硬件介紹

    迅為RK3576開(kāi)發(fā)板Android?多屏顯示

    迅為RK3576開(kāi)發(fā)板Android?多屏顯示
    的頭像 發(fā)表于 01-16 16:58 ?1016次閱讀
    迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>Android?多屏顯示

    基于RK3576開(kāi)發(fā)板的MIPI-DSI使用

    MIPI DSI接口是由MIPI聯(lián)盟下的Display工作組指定的DSI(Display Serial Interface)的接口標(biāo)準(zhǔn)。rk3576開(kāi)發(fā)板使用mipi-dsi教程
    的頭像 發(fā)表于 05-06 16:11 ?387次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的MIPI-DSI使用

    基于RK3576開(kāi)發(fā)板的HDMI-OUT使用說(shuō)明

    RK3576開(kāi)發(fā)板的HDMI-OUT使用說(shuō)明
    的頭像 發(fā)表于 05-06 16:48 ?344次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的HDMI-OUT使用說(shuō)明

    基于RK3576開(kāi)發(fā)板的人員檢測(cè)算法

    展示了RK3576開(kāi)發(fā)板的人員檢測(cè)算法例程及API說(shuō)明
    的頭像 發(fā)表于 05-07 17:33 ?300次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>的人員檢測(cè)算法

    迅為RK3576開(kāi)發(fā)板NPU例程測(cè)試-rknn-toolkit2環(huán)境搭建和使用

    迅為RK3576開(kāi)發(fā)板NPU例程測(cè)試-rknn-toolkit2環(huán)境搭建和使用
    的頭像 發(fā)表于 06-17 13:46 ?529次閱讀
    迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>NPU<b class='flag-5'>例程</b>測(cè)試-rknn-toolkit2環(huán)境搭建和使用

    迅為高情性6TOPS算力的RK3576開(kāi)發(fā)板NPU rknn-model-zoo例程演示

    迅為RK3576開(kāi)發(fā)板NPU rknn-model-zoo例程演示
    的頭像 發(fā)表于 07-01 14:54 ?820次閱讀
    迅為高情性6TOPS算力的<b class='flag-5'>RK3576</b><b class='flag-5'>開(kāi)發(fā)板</b>NPU rknn-model-zoo<b class='flag-5'>例程</b>演示