基于am437x開發(fā)板linux qt圖形界面入門教程_第1頁
基于am437x開發(fā)板linux qt圖形界面入門教程_第2頁
基于am437x開發(fā)板linux qt圖形界面入門教程_第3頁
基于am437x開發(fā)板linux qt圖形界面入門教程_第4頁
基于am437x開發(fā)板linux qt圖形界面入門教程_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

閱前版權(quán)聲廣州創(chuàng)龍電子科技有限公司保閱前版權(quán)聲廣州創(chuàng)龍電子科技有限公司保留隨時(shí)對(duì)其產(chǎn)品進(jìn)行修改和完善的權(quán)利,同時(shí)也保留不作任何通告的情況下,終止其任何一款產(chǎn)品的供應(yīng)和服務(wù)的權(quán)利。請(qǐng)用戶在購(gòu)買前我司獲取相關(guān)產(chǎn)品的最新信息,本文檔一切解釋權(quán)歸廣州創(chuàng)龍所有?2014-2018GuangzhouTronlongElectronicTechnologyCo.,Ltd.Allrights公司簡(jiǎn)式方案商,專業(yè)提供嵌入式開發(fā)套件、教學(xué)設(shè)備和主板定制服務(wù),專注TIDSP以及DSP+ARM平臺(tái)方案開發(fā),是TI大學(xué)計(jì)劃最重要的第三方合作伙伴,和國(guó)內(nèi)諸多著企業(yè)、研究所、高等院校合作密切廣州創(chuàng)龍擁有TIC2000/C5000/C6000/DaVinci/KeyStone/Sitara、XilinxSpartan/VirtexAlteraCyclone/Stratix等系列產(chǎn)品線,推出基DSP+ARM+FPGA三核架構(gòu)的數(shù)據(jù)采集處理解決方案,廣泛應(yīng)用于工控、電力、通信、儀器儀表、圖像、音視頻處理等行業(yè)作為嵌入式領(lǐng)域的領(lǐng)導(dǎo)者,廣州創(chuàng)龍注重產(chǎn)品質(zhì)量和技術(shù)支持,致力于讓客戶減廣州創(chuàng)龍,您身邊的主板定制專家產(chǎn)品保廣州創(chuàng)龍所有產(chǎn)品保修期為一年,保修期內(nèi)由于產(chǎn)品質(zhì)量原因引起的,經(jīng)鑒定是人為因素造成的產(chǎn)品損壞問題,由廣州創(chuàng)龍免費(fèi)維修或者更換更多幫銷售郵箱:sales@技術(shù)郵箱技術(shù)論壇目錄1Qt介 Qt簡(jiǎn) Qt發(fā)展歷 Qt目錄1Qt介 Qt簡(jiǎn) Qt發(fā)展歷 Qt平臺(tái)支 Qt優(yōu) Qt相關(guān)網(wǎng) 2安裝和配置Qt 安裝Qt 配置Qt 3HelloWorldQt程序開 AM437xQt編譯配 新建工 設(shè)計(jì)界 編輯代 在開發(fā)板上運(yùn)行helloworldQt程 4LEDQt程序開 AM437xQt編譯配 新建工 設(shè)計(jì)界 編輯代 5更多幫 1Qt介Qt是一個(gè)1991年由奇趣科1Qt介Qt是一個(gè)1991年由奇趣科技開發(fā)的跨平臺(tái)C++圖形用戶界面應(yīng)用程序開發(fā)框架。既可以開發(fā)GUI程序,也可用于開發(fā)非GUI程序,比如控制臺(tái)工具和服務(wù)器。Qt向?qū)ο蟮目蚣?,使用特殊的代碼生成擴(kuò)展(稱為元對(duì)象編譯器(MetaObjectCompiler,以及一些宏,易于擴(kuò)展,允許組件編程。2008年,奇趣科技被諾基亞公司收購(gòu),QT因此成為諾基亞旗下的編程語言工具。2012年,Qt被Digia收購(gòu)。2014年4月,跨平Beautifier等插件,廢棄了無Python接口的GDB調(diào)試支持,集成了基于Clang代碼模塊,并對(duì)Android支持做出了調(diào)整,至此實(shí)現(xiàn)了全面支持iOS、Android、WP1.1Qt簡(jiǎn)Qt1991年奇趣科技開發(fā)的一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序框架。它提給應(yīng)用程序開發(fā)者建立藝術(shù)級(jí)的圖形用戶界面所需的所用功能。Qt很容易擴(kuò)展,并且?guī)旌蚖indows平臺(tái)上的MFC,OWL,VCL,ATL是同類型的東西1.2Qt發(fā)展Qt*1998Apr08KDEFreeQt基金會(huì)成*1998Jul09Qt1.40發(fā)*1998Jul12KDE1.0發(fā)*1999Mar04QPL1.0發(fā)*1999Mar12Qt1.44發(fā)*1999Jun25Qt2.0發(fā)*1999Sep13KDE1.1.2發(fā)*2000Sep06Qt2.2發(fā)*2000Oct05Qt2.2.1發(fā)*2000Sep04Qtfreeedition開始使,CommercialDigia負(fù)*根據(jù)最新消息,NOKIA已經(jīng)停止Meltemi系統(tǒng)開發(fā),QT部門被解*2012Aug09作為非核心資產(chǎn)剝離計(jì)*2012Aug09作為非核心資產(chǎn)剝離計(jì)劃的一部分,諾基亞宣布將Qt軟件業(yè)務(wù)出售IT服務(wù)公Digia1.3Qt平臺(tái)Qt支持下述平臺(tái)MS/Windows-95、98、NT4.0、ME、2000、XP、Vista、Win7、Unix/X11-Linux、SunSolaris、HP-UX、CompaqTru64UNIX、IBMAIX、SGIIRIXFreeBSD、BSD/OS和其它很多X11平臺(tái)Macintosh-MacOS-QtCreator1.3Qt4.6共同構(gòu)成的QtSDK,包含了開發(fā)跨平臺(tái)應(yīng)用程序所需的全部功能QtCreator是一個(gè)用Qt開發(fā)的輕量級(jí)跨平臺(tái)集成開發(fā)環(huán)境。QtCreator可帶來兩大Qt框架的開發(fā)人員能迅速上手和操作QtCreator包含了一套用于創(chuàng)建和測(cè)試基于Qt應(yīng)用程序的高效工具,包括一個(gè)高級(jí)C++代碼編輯器上下文感知幫助系統(tǒng)可視化調(diào)試器源代碼管理項(xiàng)目和構(gòu)建管理工具QtCreator在LGPL2.1版本授權(quán)下有效,并且QtCreator在LGPL2.1版本授權(quán)下有效,并且接受代碼貢獻(xiàn)QtQtLinguist被稱為Qt語言家。它的主要任務(wù)只是讀取翻譯文件、為翻譯人員提供好的翻譯界面,它是用于界面國(guó)際化的重要工具Linguist工具4.5開始可以支持GettextPO文件格式1.4Qt優(yōu)優(yōu)良的跨平臺(tái)特Qt支持下列操作系統(tǒng)MicrosoftWindows95/98MicrosoftWindowsAIX,OS390,QNX等等。面向?qū)κ欠浅7奖愕?。Qt提供了一種稱為signals/slots的安全類型來替代callback,這使得各元件之間的協(xié)同工作變得十分簡(jiǎn)單豐富Qt包括多250個(gè)以上C++類,還提供基于模板的I/Odevice,directorymanagement,date/time類。甚至還包括正則表達(dá)式的處理功能2D/3D圖形渲染,支持大量的開XML支1.5Qt相關(guān)1.5Qt相關(guān)Qt軟件下載Qt開發(fā)文檔Qt中文論壇2安裝和配置Qt2.1Qt2安裝和配置Qt2.1Qt拷貝UbuntuQt工作目錄,例如"/media/tl437x/reference",進(jìn)入此目錄并執(zhí)行以下命令安裝QtCreator:./qt-creator-linux-x86-opensource-Next,如下圖所示選擇安裝路徑,選擇安裝路徑,如下圖所示 Next,如下圖所示QtCreator,點(diǎn)InstallQtCreator,點(diǎn)Install,如下圖所示 Finish,如下圖所示安安環(huán)境進(jìn)入Qt /media/tl437x/ti-processor-sdk-linux-am437x-evm-01.00.00.03/linux-kit/environment-cd/media/tl437x/qtcreator-圖82.2Qt2.2Qt用Qt目錄路徑配置交叉編譯工具鏈(2)點(diǎn)擊菜單欄"Tool->Options->Build&Run->Compilers->Add圖點(diǎn)擊后出圖點(diǎn)擊后出現(xiàn)如下界面圖點(diǎn)擊Browse,選擇點(diǎn)擊Browse,選擇交叉編譯工具鏈安裝目錄下的"bin/arm-linux-gnueabihf-然后點(diǎn)擊Open確認(rèn)添加完成后,點(diǎn)擊Apply,如下圖所示AM437xQt目錄路AM437xQt目錄路點(diǎn)擊"QtVersions->Add",選ARMSDK環(huán)境Qt安裝目錄下的"ti-processor-ux/usr/bin/qt5/qmake"文件3HelloWorldQt程序開3HelloWorldQt程序開可執(zhí)行Qt鏡像為光盤"demo\qt\helloworld\helloworld-build-arm-Debug\helloworld",直接拷貝到開發(fā)板中運(yùn)行本章介紹QtCreator在Ubuntu中新建一個(gè)存放Qt應(yīng)用程序的目錄,例"/media/tl437x/qt/"3.1AM437xQt編譯Qt版本,點(diǎn)Apply確認(rèn)配AM437xQt配置,如下圖所示3.2新建工在菜單欄點(diǎn)擊"File->New3.2新建工在菜單欄點(diǎn)擊"File->NewFileorProject",在彈出的對(duì)話框中選擇Application",點(diǎn)在彈出的對(duì)話框的Name欄輸入工程名稱:helloworld,在in"欄輸入或Browse選擇工程存放目錄,例如:"/media/tl437x/qt/helloworld"。點(diǎn)如下圖所示修改存放路徑,然后點(diǎn)擊修改存放路徑,然后點(diǎn)擊Next在彈出的界面中,點(diǎn)擊在彈出的界面中,點(diǎn)擊所示class"選項(xiàng)下拉選擇"QWidget",點(diǎn)Next,如下備注"Baseclass"QWidgetQMainWindowQDialog類是所有用戶界面對(duì)象的基類,QMainWindow類提供一個(gè)有菜單條、錨接窗口(例如具條和一個(gè)狀態(tài)條的主應(yīng)用程序窗口,QDialog類是對(duì)話框窗口的基類。QDialog都是繼承自QWidget(5)Finish完成新建工程,如下圖所示圖彈出基本圖彈出基本工程框架,如下圖所示圖3.3設(shè)計(jì)界窗口大小設(shè)置。3.3設(shè)計(jì)界窗口大小設(shè)置。7寸屏的不能超過800*480,4.3寸屏不能超屏幕實(shí)際規(guī)格設(shè)置480*272。請(qǐng)根雙擊打開圖形界面"Forms->widget.ui",如下圖所示在右下角的Property屬性窗口中,可以看到geometry選項(xiàng),點(diǎn)開前標(biāo)志可以看到有WidthHeight的字段,雙擊輸入顯示尺寸,例如ght:272,如下圖所示在將屬性窗口的在將屬性窗口的菜單條往下拖拉,在windowTitle字段,雙擊輸入想要的窗口題,這里的窗口標(biāo)題命名為"HelloWord",如下圖放置窗口控件在窗口放置以下控件。添加PushButton(按鈕)控件:鼠標(biāo)拖Buttons下PushButton控件移動(dòng)到畫布PushButton控件移動(dòng)到畫布中,松開鼠標(biāo)就放置了一擊退出程序。其他的控件放置方法一樣添加一個(gè)Label(文本標(biāo)簽):鼠標(biāo)拖畫布中,松開鼠標(biāo)就放置了一個(gè)Label控件,用于顯示"HellowWorld!"3.4編輯代3.4編輯代演示如何編輯代碼,我們選用了最簡(jiǎn)單的示例代碼—Close。右擊界面上的e"按鈕,點(diǎn)擊slot…",如下圖所示彈出代碼編輯框,在"voidWidget::on_pushButton_clicked()"函數(shù)內(nèi)填上如下圖所示按"Ctrl+S"就可以保按"Ctrl+S"就可以保存代碼了點(diǎn)擊左下角的編譯按鈕,在已設(shè)置的目錄"/media/tl437x/qt/helloworld-build-m-Debug"中產(chǎn)生AM437xQt程序鏡像helloworld,如下圖所示將交叉編譯產(chǎn)生的Qt鏡像拷貝到開發(fā)板文件系統(tǒng)任意路徑。啟動(dòng)開發(fā)板,在Qt鏡所在目錄執(zhí)行如下命令運(yùn)行Qt程序,執(zhí)行如下命令/etc/init.d/matrix-gui-2.0//開發(fā)板已經(jīng)設(shè)置上電自動(dòng)執(zhí)行此程序,先終圖圖Qt程序運(yùn)行命令后綴不可加"-qws",直接運(yùn)行即可,此同時(shí)運(yùn)行,即用戶Qt程序運(yùn)行命令如下Matrix界面和用4LEDQt序開開發(fā)板LED編號(hào)和GPIO對(duì)應(yīng)關(guān)系如下以TL437x-EVM4LEDQt序開開發(fā)板LED編號(hào)和GPIO對(duì)應(yīng)關(guān)系如下以TL437x-EVM開發(fā)板為例,對(duì)應(yīng)例程源碼位于光盤"demo\qt\led"目錄下。可執(zhí)Qt鏡像為光盤"demo\qt\led\led-build-arm-Debug\led",可直接拷貝到開發(fā)板中運(yùn)行(前先按照快速體驗(yàn)相關(guān)章節(jié)安裝LED驅(qū)動(dòng)程序)。如需了解開發(fā)細(xì)節(jié),請(qǐng)按照如下步操作4.1AM437xQt編譯Qt版本,點(diǎn)Apply確認(rèn)配AM437xQt配置,如下圖所示TL437x-TL437x-4.2新建工4.2新建工在菜單欄點(diǎn)擊"File->NewFileorProject",在彈出的對(duì)話框中選擇Application",點(diǎn)Choose如下圖所示在彈出的在彈出的對(duì)話框的Name欄輸入工程名稱:led,在"Createin"欄輸入或者通過owse選擇工程存放目錄,例如:"/media/tl437x/qt/led"。點(diǎn)Next,如下圖所示Next,如Next,如下圖所示在彈出的界面中,點(diǎn)擊在彈出的界面中,點(diǎn)擊所示class"選項(xiàng)下拉選擇"QWidget",點(diǎn)Next,如下備注"Baseclass"QWidgetQMainWindowQDialog類是所有用戶界面對(duì)象的基類,QMainWindow類提供一個(gè)有菜單條、錨接窗口(例如具條和一個(gè)狀態(tài)條的主應(yīng)用程序窗口,QDialog類是對(duì)話框窗口的基類。QDialog都是繼承自QWidget(5)Finish完成新建工程,如下圖所示圖彈出圖彈出基本工程框架,如下圖所示4.3設(shè)計(jì)界4.3設(shè)計(jì)界窗口大小設(shè)置。7寸屏的不能超過800*480,4.3寸屏不能超屏幕實(shí)際規(guī)格設(shè)置480*272。請(qǐng)根雙擊打開圖形界面"Forms->widget.ui",如下圖所示在右下角的在右下角的Property屬性窗口中,可以看到geometry選項(xiàng),點(diǎn)開前標(biāo)志可以看到有WidthHeight的字段,雙擊輸入顯示尺寸,例如ght:272,如下圖所示在將屬性窗在將屬性窗口的菜單條往下拖拉,在windowTitle字段,雙擊輸入想要的窗口題,這里的窗口標(biāo)題命名為"led",如下圖放置窗口控件。在窗口放置以下控件。添加PushButton(按鈕)控件:鼠標(biāo)拖ButtonsPushButton控件移動(dòng)到畫布中,松開鼠標(biāo)就放置了一PushButton控件,用于點(diǎn)擊退出程序。其他的控件放置方法一樣4.4編輯代4.4編輯代以O(shè)N"為例,如下圖所以O(shè)N"為例,如下圖所示(3)添加的Click事件處理代碼分別,如下圖所示void{system("echo1>/sys/class/leds/user-}void{system("echovoid{system("echo1>/sys/class/leds/user-}void{system("echo0>/sys/class/leds/user-}void{system("echo1>/sys/class/leds/user-}void{system("echo0>/sys/class/leds/user-}void{system("echo1>/sys/class/leds/user-}void{system("echo0>/sys/class/leds/use

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論