日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 測(cè)試測(cè)量 > 測(cè)試測(cè)量
[導(dǎo)讀]本文結(jié)合微波信號(hào)發(fā)生器人機(jī)界面設(shè)計(jì)介紹了Linux下基于Qt/Embedded的設(shè)計(jì)。

1引 言

嵌入式系統(tǒng)的出現(xiàn)至今已有30多年的歷史,嵌入式技術(shù)也經(jīng)歷了三個(gè)發(fā)展階段。早期的嵌入式系統(tǒng)因資源極其有限,只有字符界面或者簡(jiǎn)單的圖形界面。隨著技術(shù)的發(fā)展,硬件成本的大幅下降,嵌入式系統(tǒng)應(yīng)用要求越來(lái)越高,應(yīng)用范圍越來(lái)越廣。這樣字符界面和簡(jiǎn)單的圖形界面不再能滿足一些嵌入式系統(tǒng)的要求。嵌入式系統(tǒng)對(duì)圖形用戶界面(GUI)的需求越來(lái)越迫切。

不同于在個(gè)人PC上的圖形用戶界面,對(duì)嵌入式系統(tǒng)上的GUI包括:輕型、占用資源少,可配置,高性能,高可靠性。

2 幾種成熟的基于Linux的嵌入式GUI

2.1 MicroWindows/NanoX

MicroWindows是一個(gè)開(kāi)放源代碼的項(xiàng)目,起源于NanoGUI項(xiàng)目。他支持兩種應(yīng)用程序編程接口,Win32API的實(shí)現(xiàn)叫MicroWindows,類似Xlib API的實(shí)現(xiàn)叫Nano-X。

MicroWindows是一個(gè)基于典型客戶/服務(wù)器體系結(jié)構(gòu)的GUI系統(tǒng),基本分成3層。最底層是面向圖形輸出和鍵盤、鼠標(biāo)或觸摸屏的驅(qū)動(dòng)程序;中間層提供底層硬件的抽象接口,并進(jìn)行窗口管理,實(shí)際上是一個(gè)可移植的窗口引擎。他實(shí)現(xiàn)了畫線、區(qū)域填充、多邊形、剪切和多種顏色模式,這些實(shí)現(xiàn)是參考Xfree86而設(shè)計(jì)的;最高層分別提供兼容于Xwindow和Windows CE(Win 32子集)的API。

該項(xiàng)目的主要特色在于提供了類似X的客戶/服務(wù)器體系結(jié)構(gòu)和相對(duì)完善的圖形功能,包括一些高級(jí)功能。比如Alpha混合、三維支持、TrueType字體支持等。該項(xiàng)目目前由美國(guó)Century Software公司主持開(kāi)發(fā)。

2.2 MiniGUI

MiniGUI是原清華大學(xué)教師魏永明主持的一個(gè)自由軟件項(xiàng)目,其目標(biāo)是基于Linux的實(shí)時(shí)嵌入式系統(tǒng)提供一個(gè)輕量級(jí)的圖形用戶界面支持系統(tǒng)。MiniGUI基于SVGALib和LinuXThread庫(kù),采用簡(jiǎn)化的類Windows風(fēng)格的圖形用戶界面,功能限制期不能用于更大的嵌入式系統(tǒng)。

2.3 Qt/Embedded

Qt/Embedded是跨平臺(tái)C++圖形用戶界面工具包,因其面向?qū)ο?、跨平臺(tái)、界面設(shè)計(jì)更美觀而得到廣泛應(yīng)用?;赒t的X Window程序可以方便地移植到Qt/Embedded版本上。因此,自從Qt/Embedded以GPL條款發(fā)布以來(lái),就有大量的嵌入式開(kāi)發(fā)商轉(zhuǎn)到Qt/Embedded系統(tǒng)上。

3 Qt/Embedded框架結(jié)構(gòu)及編程關(guān)健技術(shù)

3.1 Qt/Embedded的開(kāi)發(fā)環(huán)境及工具

使用Troll tech公司的X開(kāi)發(fā)平臺(tái)自由軟件的自由版:Qt/Embedded 3.3.3。下載RPM包并安裝。Qt支持多種處理器,根據(jù)所選用的處理器進(jìn)行適當(dāng)?shù)呐渲煤途幾g,即可得到如下創(chuàng)建應(yīng)用程序所需的軟件包和工具:

(1) Qt/Embedded函數(shù)庫(kù)。

(2) 虛擬幀緩沖qvfb(virtual frame buffer):在X窗口用來(lái)運(yùn)行和測(cè)試Qt/Embedded應(yīng)用程序的系統(tǒng)程序。有了他,就可以不必在控制臺(tái)和X11之間來(lái)回切換了。

(3) designer:Qt下用于設(shè)計(jì)窗口組件的工具。

(4) tmake:Makefile文件的自動(dòng)生成器。

(5) moc:用于Qt C++擴(kuò)展的meta-object編譯器。

(6) uic:從XML文件生成代碼的用戶界面編譯器。

(7) 其他工具,再加上g++,就可以進(jìn)行基于Qt/Em-bedded的應(yīng)用程序開(kāi)發(fā)、編譯和調(diào)試了。

3.2 Qt/Embedded的框架結(jié)構(gòu)

圖1是Qt/Embedded的框架結(jié)構(gòu)。相對(duì)于Linux上Qt的另外一個(gè)版本Qt/X11,Qt/Embedded并不依賴于XServer。這使Qt/Embedded相對(duì)于Qt/X11節(jié)省了不少的內(nèi)存。代替X server和Xlib庫(kù)的是Qt/Embedded庫(kù)。根據(jù)應(yīng)用的需要,可以對(duì)其進(jìn)行配置,編譯后庫(kù)的大小從700 kB~7 MB左右,典型應(yīng)用的庫(kù)大小大約為2~3 MB。如果事先知道應(yīng)用和相關(guān)的具體組件,還可以將應(yīng)用程序、組件和Qt/Embedded庫(kù)靜態(tài)連接,從而更能節(jié)約內(nèi)存和CPU。FrameBuffer是一種驅(qū)動(dòng)程序接口,這種接口將顯示設(shè)備抽象為幀緩沖區(qū)。用戶可以將他看成顯示內(nèi)存的一種影像,將其映射到進(jìn)程地址空間后,就可以直接進(jìn)行讀寫操作,而寫操作可以立即反映到屏幕上。該驅(qū)動(dòng)程序的設(shè)備文件一般是/dev/fb0,/dev/fb1等。

3.3 Qt編程關(guān)鍵技術(shù)

Qt是面向?qū)ο蟮腃++工具包,其應(yīng)用程序設(shè)計(jì)遵循面向?qū)ο蟮木幊谭椒?。不同于Xt處理事件采用回調(diào)函數(shù)的方式,Qt采用更靈活的signal/slot(信號(hào)/槽)機(jī)制。Qt是這樣處理事件的:QApplication的事件循環(huán)體從事件隊(duì)列中拾取本地窗口系統(tǒng)事件或其他事件,譯成Qevent(),并送給Qobject::event(),最后送給QWidget::event()分別對(duì)事件處理。事件的產(chǎn)生來(lái)自于所在的窗口系統(tǒng),也可以是QApplication類成員函數(shù)發(fā)送的消息,如:sendEvent()。

Qt應(yīng)用程序中,首先在main()函數(shù)中創(chuàng)建QApplication對(duì)象,QApplication對(duì)象負(fù)責(zé)圖像用戶界面應(yīng)用程序的控制流和主設(shè)置,通過(guò)調(diào)用該對(duì)象的exec()函數(shù),進(jìn)入事件循環(huán)處理,對(duì)來(lái)自窗口系統(tǒng)或其他的事件進(jìn)行處理和調(diào)度,直到收到exit()或quit()結(jié)束。

Qt利用signal/slot機(jī)制實(shí)現(xiàn)對(duì)象之間的通信。當(dāng)某一個(gè)對(duì)象1狀態(tài)改變時(shí),發(fā)出signal,通知所有與該信號(hào)相連對(duì)象的slot,從而引發(fā)對(duì)應(yīng)的slot的動(dòng)作。Signal/slo機(jī)制真正實(shí)現(xiàn)了封裝的概念。Slot除了可以接收signa之外,與其他函數(shù)沒(méi)有什么不同。Signal和slot并沒(méi)有構(gòu)成一一對(duì)應(yīng)的關(guān)系,同一個(gè)signal可以連接任意個(gè)slot,多個(gè)signal也可以和同一個(gè)slot相連。雖然signal/slot機(jī)制比回調(diào)函數(shù)速度方面有所減慢,但并不明顯,特別是在嵌人式系統(tǒng)中,所用的signal和slot不多的場(chǎng)合,這種速度上的損失可以承受。但這種機(jī)制所帶來(lái)的簡(jiǎn)明性、靈活性確實(shí)給應(yīng)用帶來(lái)了很多便利。

4 微波信號(hào)發(fā)生器軟件設(shè)計(jì)

圖2是應(yīng)用Qt/Embedded在微波合成掃源上開(kāi)發(fā)的圖形用戶界面。該項(xiàng)目采用研華PCM-4335PC/104主板,Cyrix 300 MHz的處理器(x86系列),8 MB內(nèi)存16 MB的DOM,嵌入式Linux系統(tǒng)。液晶顯示模塊的分辨率為640×240。

4.1 微波信號(hào)發(fā)生器原理

我們所開(kāi)發(fā)的信號(hào)發(fā)生器是一種微波合成掃頻信號(hào)源。圖3是其原理圖。

時(shí)基標(biāo)準(zhǔn)為頻率發(fā)生器提供標(biāo)準(zhǔn)信號(hào)10 MHz,整機(jī)的頻率穩(wěn)定度由該標(biāo)準(zhǔn)頻率決定。頻率合成器采用頻率合成技術(shù)使標(biāo)準(zhǔn)頻率產(chǎn)生15~40 MHz的離散IF信號(hào)。微波輸出組件產(chǎn)生2~20 GHz的微波輸出信號(hào)。外圍設(shè)備接口電路包括前面板、后面板、GPIB硬件、液晶模塊、鍵盤控制等。調(diào)制掃描及微電路控制部分提供各種控制信號(hào),完成功率電平穩(wěn)幅(ALC)、模擬掃頻、脈沖調(diào)制等功能。

4.2 點(diǎn)頻功能的實(shí)現(xiàn)算法

頻率合成器作用是給微波掃頻信號(hào)提供一定分辨力的頻率參考信號(hào),并對(duì)微波信號(hào)輸出頻率進(jìn)行逐點(diǎn)鎖定,以得到高準(zhǔn)確度和穩(wěn)定度的掃頻輸出信號(hào)。圖4是他的原理圖。

輸出點(diǎn)頻信號(hào)和掃頻信號(hào)是微波合成掃源的基本功能。而點(diǎn)頻輸出又是掃頻輸出的基礎(chǔ)(掃頻信號(hào)的輸出可以利用點(diǎn)頻通過(guò)程序控制的方法實(shí)現(xiàn))。下面是點(diǎn)頻功能的實(shí)現(xiàn)算法。

(1) 用戶在前面板上設(shè)置需要設(shè)定的頻率f0。

(2) 判斷f0屬于哪個(gè)頻段,求出YTO的輸出頻率fYTO。并對(duì)YTO進(jìn)行預(yù)置頻率。

(3) 根據(jù)fYTO和f0算出YTO鑒相器參考頻率,由此推出取樣環(huán)和小數(shù)分頻環(huán)的分頻系數(shù),并將分頻系數(shù)置人對(duì)應(yīng)的數(shù)據(jù)鎖存器。

4.3 試驗(yàn)測(cè)試

我們選用中國(guó)電子科技集團(tuán)公司第41研究所AV4032微波頻譜分析儀和功率計(jì)等儀器對(duì)微波信號(hào)發(fā)生器的輸出信號(hào)做測(cè)試,測(cè)試的結(jié)果如表1所示。

從測(cè)試結(jié)果來(lái)看,完全達(dá)到了設(shè)計(jì)要求。


5 結(jié) 語(yǔ)

嵌入式產(chǎn)品正在成為新的技術(shù)熱點(diǎn),上層應(yīng)用程序是產(chǎn)品的直接功能體現(xiàn)。Qt/Embedded因其面向?qū)ο?、跨平臺(tái)、界面設(shè)計(jì)更美觀、程序設(shè)計(jì)簡(jiǎn)明和靈活而得到越來(lái)越多的廣泛應(yīng)用。本文結(jié)合微波信號(hào)發(fā)生器人機(jī)界面設(shè)計(jì)介紹了Linux下基于Qt/Embedded的設(shè)計(jì)。使用Qt/Embedded設(shè)計(jì)的微波信號(hào)發(fā)生器頻率切換時(shí)間達(dá)到了45 ms。單邊帶相位噪聲為-75 dBc/Hz,功率準(zhǔn)確度為0.52 dB。其他指標(biāo)也完全達(dá)到了設(shè)計(jì)的要求。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

憑借其全新的功能豐富的移動(dòng)交易應(yīng)用程序,屢獲殊榮的經(jīng)紀(jì)商HFM讓客戶實(shí)現(xiàn)觸手可及的全方位交易體驗(yàn)。 毛里求斯路易港2022年10月14日 /美通社/ -- 全球多資產(chǎn)經(jīng)紀(jì)商...

關(guān)鍵字: 應(yīng)用程序 FM 移動(dòng)應(yīng)用 ADI

倫敦2022年10月13日 /美通社/ -- Ubuntu Pro是擴(kuò)展式安全維護(hù)和合規(guī)訂閱服務(wù),目前針對(duì)數(shù)據(jù)中心和工作站已推出公開(kāi)測(cè)試Beta版本。Canonical將按照...

關(guān)鍵字: UBUNTU CANONICAL BSP 應(yīng)用程序

加拿大政府9月26日表示,從2022年10月1日起,加拿大將取消所有疫情下的旅行限制,包括對(duì)乘坐航班和火車乘客的疫苗接種和口罩要求。所有旅行者(無(wú)論國(guó)籍)從10月1日開(kāi)始將不必通過(guò)ArriveCAN應(yīng)用程序提交健康信息或...

關(guān)鍵字: ECAN 應(yīng)用程序 飛機(jī) ARRI

SIXT管理委員會(huì)批準(zhǔn)整體可持續(xù)發(fā)展計(jì)劃,以進(jìn)一步加快二氧化碳減排和智能新能源出行需求 到2030年, SIXT在歐洲車隊(duì)中的新能源車將達(dá)到70%至90% 投資5000萬(wàn)歐元:公司將大...

關(guān)鍵字: 可持續(xù)發(fā)展 新能源汽車 應(yīng)用程序 移動(dòng)平臺(tái)

(全球TMT2022年9月22日訊)建筑項(xiàng)目管理軟件領(lǐng)域企業(yè)InEight Inc.宣布了最新的軟件創(chuàng)新,包括范圍、設(shè)計(jì)和資源管理方面的新流程標(biāo)準(zhǔn)化,以及新的進(jìn)展跟蹤功能和創(chuàng)建基準(zhǔn)驗(yàn)證型進(jìn)程預(yù)估和時(shí)間表的能力。該更新還...

關(guān)鍵字: 軟件 進(jìn)程 應(yīng)用程序 模板

InEight專注于軟件創(chuàng)新的標(biāo)準(zhǔn)化和基準(zhǔn)更新,從而提高了效率,增加了項(xiàng)目信心 InEight建筑項(xiàng)目管理平臺(tái)的最新發(fā)展引入了新的設(shè)計(jì)管理和基準(zhǔn)實(shí)踐,提高了各個(gè)項(xiàng)目之間的一...

關(guān)鍵字: 軟件 應(yīng)用程序 進(jìn)程 移動(dòng)應(yīng)用

在這篇文章中,小編將為大家?guī)?lái)信號(hào)發(fā)生器的相關(guān)報(bào)道。如果你對(duì)本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: 信號(hào)發(fā)生器 高頻信號(hào)發(fā)生器 低頻信號(hào)發(fā)生器

今天,小編將在這篇文章中為大家?guī)?lái)信號(hào)發(fā)生器的有關(guān)報(bào)道,通過(guò)閱讀這篇文章,大家可以對(duì)信號(hào)發(fā)生器具備清晰的認(rèn)識(shí),主要內(nèi)容如下。

關(guān)鍵字: 噪聲信號(hào)發(fā)生器 信號(hào)發(fā)生器 發(fā)生器

信號(hào)發(fā)生器將是下述內(nèi)容的主要介紹對(duì)象,通過(guò)這篇文章,小編希望大家可以對(duì)信號(hào)發(fā)生器的相關(guān)情況以及信息有所認(rèn)識(shí)和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 信號(hào)發(fā)生器 脈沖信號(hào)發(fā)生器 偽隨機(jī)信號(hào)發(fā)生器

在這篇文章中,小編將對(duì)信號(hào)發(fā)生器的相關(guān)內(nèi)容和情況加以介紹以幫助大家增進(jìn)對(duì)信號(hào)發(fā)生器的了解程度,和小編一起來(lái)閱讀以下內(nèi)容吧。

關(guān)鍵字: 信號(hào)發(fā)生器 函數(shù)發(fā)生器 發(fā)生器

測(cè)試測(cè)量

28658 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉