999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于QT的圖形界面控制系統(tǒng)的開發(fā)

2011-12-31 00:00:00汪國強(qiáng)趙弘磊焦亮
科技創(chuàng)新導(dǎo)報(bào) 2011年21期

摘 要:在linux操作系統(tǒng)下,以qtopia為圖形界面應(yīng)用程序開發(fā)平臺(tái),介紹了圖形界面控制系統(tǒng)的開發(fā)過程。首先闡述了控制界面的開發(fā)環(huán)境的建立,介紹了界面應(yīng)用程序的設(shè)計(jì),以完成后續(xù)溫度數(shù)據(jù)采集、顯示、目標(biāo)預(yù)設(shè)等功能。

關(guān)鍵詞:Qt技術(shù)圖形界面控制系統(tǒng)程序的設(shè)計(jì)

中圖分類號(hào):TP29文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1674-098X(2011)07(c)-0023-02

隨著嵌入式技術(shù)的發(fā)展,越來越多的智能化帶有界面控制功能的小型設(shè)備深入到人們生活當(dāng)中。開發(fā)者基于嵌入式領(lǐng)域中的Qt技術(shù),設(shè)計(jì)出一套應(yīng)用于工控領(lǐng)域的具有人機(jī)交互界面的智能控制系統(tǒng),該系統(tǒng)實(shí)現(xiàn)AD雙路讀取、數(shù)據(jù)顯示、溫度預(yù)設(shè)、PWM自動(dòng)調(diào)節(jié)等功能,本文著重介紹界面設(shè)計(jì)過程。

1 圖形用戶接口環(huán)境的建立

1.1 安裝Qt/Embedded2.3.7命令

tar xvzf qt-embeded-2.3.7.tar.gz

cd qt.2.3.7

export QTDIR=$QTDIR

export PATH=$QTDIR/bin:$PATH

export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH./configure –qconfig –qvfb –depths 4,8,16,32

Make sub-src

其中設(shè)置QT嵌入式開發(fā)包虛擬緩沖幀工具qvfb,并支持4,8,16,32位顯示顏色的深度。虛擬出來的緩沖幀和硬件平臺(tái)設(shè)備上的每個(gè)像素保持一致,這樣在軟件開發(fā)和系統(tǒng)調(diào)用時(shí)就不用總是刷新嵌入式設(shè)備的FLASH存儲(chǔ)空間,加速了整個(gè)研發(fā)的周期。

1.2 安裝Qt/X112.3.2

Qt/X112.3.2提供用戶接口編譯器uic,它所產(chǎn)生的源文件和Qt/embedded的庫一應(yīng)起被編譯鏈接,但是QT for X11的版本該要比Qt/Embedded舊,否則會(huì)導(dǎo)致軟件不兼容。

1.3 安裝qtopia

為了避免qtopia2.2.0復(fù)雜的配置編譯的過程,我們直接從arm9論壇下載了關(guān)于qtopia的安裝腳本并執(zhí)行。

2 圖形界面的設(shè)計(jì)

2.1 用QT圖形設(shè)計(jì)器設(shè)計(jì)控制界面

用QT圖形設(shè)計(jì)器是一個(gè)具有可視化用戶接口的設(shè)計(jì)工具。按照項(xiàng)目需要,控制界面要求簡(jiǎn)單,可預(yù)設(shè)控制值,將界面分為一級(jí)主目錄和若干個(gè)二級(jí)子目錄和三級(jí)子目錄。其中主菜單為功能選項(xiàng),二級(jí)子菜單包括狀態(tài)顯示、溫度預(yù)設(shè)、視頻監(jiān)控、功能簡(jiǎn)介等(視頻監(jiān)控,和多算法選擇現(xiàn)在還沒有開發(fā)完全)。如圖一、圖二所示,為上位機(jī)QT環(huán)境下設(shè)計(jì)的一級(jí)菜單界面和子菜單中的狀態(tài)顯示界面:

uic自動(dòng)創(chuàng)建了類 CDlgMonitorBase,這個(gè)類是以公有方式對(duì)QDialog窗口類的繼承:class CDlgMonitorBase : public QDialog。在該類中添加公有成員:QPushButton* btn_up;提供上選擇按鈕部件;其他三個(gè)觸摸按鍵添加同此方法,完成父類控件的信號(hào)與槽的配對(duì),實(shí)現(xiàn)上下選擇、確定、取消功能:

connect((QObject*)btn_ok,SIGNAL(clicked()),this,SLOT(menu_select()));

在QT應(yīng)用程序的read_adc(int ch)函數(shù)中,命令int ret = ioctl(adc_fd, ADC_SEL_CHANN, ch),其中ch是傳遞進(jìn)來的通道號(hào)0或者1;adc_fd是設(shè)備號(hào),這里傳遞進(jìn)來的為ADC的設(shè)備號(hào),而ADC_SEL_CHANN可以理解為一條命令,直接與ADC的驅(qū)動(dòng)相聯(lián)系,調(diào)用驅(qū)動(dòng)里命令讀取ADC數(shù)據(jù)寄存器ADCDAT0里的值,如果讀到值,ioctl返回值為1。最終read_adc(int ch)實(shí)現(xiàn)了讀取ADC數(shù)據(jù)寄存器中的值。系統(tǒng)不僅具備觸摸屏按鍵控制功能,而且具備硬件面板真實(shí)按鍵功能,為了能夠使兩者建立映射關(guān)系,在MyPIGPC.cpp中具體實(shí)現(xiàn)如下:

bt[0] = btn_status[0];

bt[1] = btn_status[1];

bt[2] = btn_status[2];

bt[3] = btn_status[3];

for (int i=0; i

{ btn_status[i] = 0; }

if (bt[0]) menu_movedn();

if (bt[1]) menu_select();

if (bt[2]) menu_moveup();

if (bt[3]) closeme();

btn_status[]是在頭文件中用靜態(tài)變量定義的四成員的數(shù)組,分別對(duì)應(yīng)著控制的液晶觸摸按鍵,當(dāng)硬件面板上有按鍵被按下,驅(qū)動(dòng)程序會(huì)使btn_status[]中的相應(yīng)變量值為1,然后btn_status[]數(shù)組值將賦值給數(shù)組bt[],值得注意的是兩個(gè)數(shù)組的區(qū)別,前者使用靜態(tài)變量定義的,會(huì)在內(nèi)存中永久性地分成一片空間用來單獨(dú)感應(yīng)按鍵是否被按下,將其值付給char型數(shù)組bt[]后,btn_status[]數(shù)組隨即清零以便感受是否有新的鍵被按下。menu_movedn();menu_select();menu_moveup();closeme();分別是觸摸上四個(gè)按鍵觸發(fā)后所對(duì)應(yīng)的槽函數(shù),當(dāng)硬件按鍵被按下后,調(diào)用相應(yīng)函數(shù),實(shí)現(xiàn)的效果與點(diǎn)擊觸摸屏所實(shí)現(xiàn)的效果是一樣的。

2.2 硬件平臺(tái)控制界面的實(shí)現(xiàn)

將編寫好的程序經(jīng)交叉編譯生成mypigpc,mypigpc.desktop,mypigpc.png三個(gè)文件,通過ftp傳到目標(biāo)板以下三個(gè)目錄:

mkdir -p /opt/Qtopia/pics/mypigpc

cp mypigpc.png /opt/Qtopia/pics/mypigpc/

應(yīng)用程序圖標(biāo)存放在該文件夾下。

chmod 777 mypigpc

使登錄的所有人具有最高權(quán)限。

cp mypigpc /opt/Qtopia/bin

可執(zhí)行文件存放該文件夾下。

cp mypigpc.desktop /opt/Qtopia/apps/Application

此時(shí)已把程序固化到硬件平臺(tái)的FLASH中。

3 結(jié)語

本文簡(jiǎn)述了界面開發(fā)環(huán)境的建立,各級(jí)界面的設(shè)計(jì),應(yīng)用程序工作的流程。實(shí)現(xiàn)了界面控制、顯示、觸摸按鍵與硬件平臺(tái)按鍵的映射功能。

主站蜘蛛池模板: 欧美成人综合在线| 69综合网| 91麻豆久久久| 欧美亚洲国产视频| 欧美成人综合视频| 在线免费看片a| 久久窝窝国产精品午夜看片| 亚洲中文字幕久久精品无码一区| 国产女同自拍视频| 国产电话自拍伊人| 国产美女自慰在线观看| 中文字幕人成人乱码亚洲电影| 国产情侣一区| 潮喷在线无码白浆| 人妻21p大胆| 91免费精品国偷自产在线在线| 日韩第九页| 亚洲欧美成aⅴ人在线观看| 国产剧情无码视频在线观看| 国产人免费人成免费视频| 国产精品丝袜在线| 日韩国产精品无码一区二区三区| 国产91无码福利在线| 国产成人精品一区二区秒拍1o| 亚洲综合第一页| 国产精女同一区二区三区久| 国产成人高清精品免费| 婷婷亚洲视频| 欧美国产日产一区二区| 欧类av怡春院| 四虎永久免费在线| 91年精品国产福利线观看久久| 亚瑟天堂久久一区二区影院| 亚洲一级色| 免费又黄又爽又猛大片午夜| 久久免费精品琪琪| 国产小视频免费| 一区二区三区四区日韩| 日韩国产无码一区| V一区无码内射国产| 精品少妇人妻无码久久| 亚洲国产日韩在线成人蜜芽| 免费无码一区二区| 欧美特级AAAAAA视频免费观看| 久久综合色88| 国产精品深爱在线| 久久动漫精品| 动漫精品中文字幕无码| 一级毛片在线播放| 亚洲一区二区在线无码| 亚洲综合狠狠| 亚洲成人网在线观看| 国产在线无码av完整版在线观看| 一级毛片不卡片免费观看| 国产爽妇精品| 中文字幕无线码一区| 国产精选自拍| 国产精品七七在线播放| 人妻熟妇日韩AV在线播放| 在线色国产| 97精品伊人久久大香线蕉| 色久综合在线| 试看120秒男女啪啪免费| 91无码国产视频| 亚洲男人天堂2018| 国产香蕉在线视频| 亚洲精品麻豆| 日韩乱码免费一区二区三区| 午夜限制老子影院888| 91亚洲精选| 国产日韩欧美中文| 亚洲男人的天堂久久香蕉网| 中文国产成人精品久久| 又猛又黄又爽无遮挡的视频网站| 亚洲 欧美 中文 AⅤ在线视频| 亚洲综合极品香蕉久久网| 亚洲人视频在线观看| 亚洲另类第一页| 91麻豆精品国产高清在线| 成人在线亚洲| 波多野结衣无码中文字幕在线观看一区二区 | 久久香蕉国产线看观看精品蕉|