新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于嵌入式系統(tǒng)的數(shù)字示波器用戶圖形界面的實(shí)現(xiàn)

基于嵌入式系統(tǒng)的數(shù)字示波器用戶圖形界面的實(shí)現(xiàn)

作者: 時(shí)間:2017-01-12 來源:網(wǎng)絡(luò) 收藏
  1 引言

  隨著嵌入式系統(tǒng)應(yīng)用領(lǐng)域的不斷擴(kuò)大,系統(tǒng)復(fù)雜性也在不斷提高。所以在嵌入式系統(tǒng)中實(shí)現(xiàn)用戶圖形化(gui),已經(jīng)成為大勢所趨。目前,嵌入式系統(tǒng)中大多數(shù)的用戶圖形化界面(gui)都是在操作系統(tǒng)(如os、wince、linix)的支持下, 調(diào)用系統(tǒng)的各種api函數(shù)實(shí)現(xiàn)的。這些操作系統(tǒng)為實(shí)現(xiàn)gui提供了大量的庫函數(shù),也為編程人員提供了界面設(shè)計(jì)的良好平臺。如利用wince就可以十分方便的設(shè)計(jì)出具有windows風(fēng)格的圖形界面。

本文引用地址:http://butianyuan.cn/article/201701/337712.htm

  本文這款數(shù)字示波器是普源精電(rigol)公司推出的ds1000系列,其設(shè)計(jì)完全自主完成,貼近國人使用習(xí)慣。其用戶圖形界面(gui)是在visualdsp++ 4.0 kernel的基礎(chǔ)上開發(fā)的,界面風(fēng)格緊緊與儀器的功能相聯(lián)系。在完成了儀器的波形和菜單等顯示的基礎(chǔ)上,rigol團(tuán)隊(duì)也做了一些通用性的用戶圖形界面,如文件管理器等。當(dāng)然,所設(shè)計(jì)的用戶圖形界面,在功能強(qiáng)大方面是遠(yuǎn)不能與wince等所比擬的,但是對于儀器的使用者來說,已經(jīng)是足夠的方便因?yàn)檫@畢竟是儀器的用戶圖形界面,而不是掌上電腦pda的用戶圖形界面。

  2 數(shù)字示波器
的用戶界面實(shí)現(xiàn)原理

  用戶圖形界面的實(shí)現(xiàn),需要硬件、軟件上的支持。如圖1所示,通過操作平臺(operation platform)的調(diào)配,調(diào)用顯示程序,顯示程序刷新顯示緩存,再由顯示驅(qū)動程序,將顯示緩存中的內(nèi)容顯示到液晶屏上。下面簡要的介紹一下上圖中主要的幾個(gè)組成部分:

  2.1 實(shí)現(xiàn)圖形化的硬件原理

  rigol ds1000系列數(shù)字示波器采用的是320x234分辨率的tft液晶顯示器,通過液晶的驅(qū)動電路,可以使液晶正常顯示,通過幀信號同步、行信號同步、數(shù)據(jù)信號的時(shí)鐘(clock)同步,顯示點(diǎn)陣的數(shù)據(jù)將被從sdram中寫入到液晶顯示器的顯示buffer中,從而顯示出彩色圖像。

  從圖1可以看出,如果要更新液晶顯示器顯示的內(nèi)容,我們只需更新lcdbuffer中的顯示數(shù)據(jù)就可以了。

  2.2 實(shí)現(xiàn)用戶圖形界面(gui)的圖形標(biāo)準(zhǔn)庫

  要在用戶圖形界面上顯示各種的圖形、圖案,除了硬件電路的支持外,還需要強(qiáng)大的軟件支持。而其中(gui)的圖形標(biāo)準(zhǔn)庫為最基礎(chǔ),而不可或缺的。

  用戶圖形界面(gui)的圖形標(biāo)準(zhǔn)庫,包括最基本的畫點(diǎn)、畫線、畫矩形、填充矩形、畫圓形、放置bmp的圖案、顯示中、英文等等的函數(shù),該圖形庫如果功能越強(qiáng)大,就越可以支持復(fù)雜的用戶圖形界面(gui)。

  2.3 實(shí)現(xiàn)用戶圖形界面(gui)的操作平臺的支持

  僅僅有了繪制圖形的圖形標(biāo)準(zhǔn)庫,要實(shí)現(xiàn)用戶圖形界面,還是遠(yuǎn)遠(yuǎn)不夠。圖形庫是單一畫面不可缺少的,但是要形成有機(jī)的、可操作的用戶圖形界面,還需要后臺有一個(gè)穩(wěn)定、功能強(qiáng)大的操作系統(tǒng)平臺。

  操作平臺根據(jù)用戶的外界輸入(一般是鍵盤),以及系統(tǒng)當(dāng)前的狀態(tài)來決定下一步系統(tǒng)的狀態(tài),從而調(diào)用相應(yīng)的gui界面。如此,便實(shí)現(xiàn)了用戶圖形界面。

  3 數(shù)字示波器的用戶圖形界面(gui)軟件的設(shè)計(jì)思路

  3.1 界面種類的劃分

  對于用戶圖形界面(gui)的設(shè)計(jì)不能簡單、統(tǒng)一的完成,要考慮到用戶在各種情況下的操作界面。根據(jù)這些界面所具備的共同點(diǎn),我們將這些界面分成如下的種類,同一種類的界面中將具備相同或者相似的功能區(qū)域。每一種界面都會有相應(yīng)的處理程序,也有專門的數(shù)據(jù)結(jié)構(gòu)。

  根據(jù)實(shí)現(xiàn)的不同的功能我們劃分出如下的界面種類:

  a. 背景網(wǎng)格顯示界面;b.波形顯示界面;b. 幫助文檔瀏覽界面;c.菜單顯示界面;d. 文件管理瀏覽器界面;e. 文件名稱輸入界面;f.前景內(nèi)容顯示界面(包括各種參數(shù)顯示信息,測量信息以及提示信息等)。

  各界面種類如下圖所示:

  3.2 界面區(qū)域與外界輸入的相互配合響應(yīng)

  由以上可知,顯示的圖形雖然形形色色,但是他們都可以抽象成具有共同屬性的某種數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)就好比是圖形界面的靈魂,掌握了數(shù)據(jù)結(jié)構(gòu),就可以讓圖形界面隨之而變。那么如何設(shè)計(jì)、控制、改變這些數(shù)據(jù)結(jié)構(gòu)就成為實(shí)現(xiàn)用戶圖形界面(gui)的關(guān)鍵了。

  要響應(yīng)外界用戶的輸入,我們需要制定一套機(jī)制運(yùn)行法則,而這套機(jī)制運(yùn)行法則就是狀態(tài)機(jī)(systemstatus machine),也是用戶用以操作儀器的操作平臺(operation platform)。依據(jù)這套運(yùn)行法則,我們的系統(tǒng)根據(jù)外界的輸入來更改各種界面下使用的數(shù)據(jù)結(jié)構(gòu),從而實(shí)現(xiàn)用戶對圖形界面的操作。當(dāng)然,在實(shí)際的設(shè)計(jì)中,操作平臺(operation platform)不僅僅是改變gui的數(shù)據(jù)結(jié)構(gòu),還要考慮任務(wù)調(diào)度以及其他任務(wù)模塊中的數(shù)據(jù)結(jié)構(gòu)的改變。

  4 數(shù)字示波器的用戶圖形界面(gui)的軟件設(shè)計(jì)流程

  設(shè)計(jì)出一個(gè)好的用戶圖形界面,是一個(gè)龐大而巨細(xì)的工程。涉及到方方面面的相互之間的關(guān)系,也涉及到實(shí)現(xiàn)過程中的許多細(xì)節(jié)的問題。如何理清這些繁多的變化的關(guān)系,是設(shè)計(jì)的關(guān)鍵。rigol團(tuán)隊(duì)曾經(jīng)使用一些全局變量,來做為各種狀態(tài)、各種模式下的標(biāo)示,用以改變用戶的圖形界面。但是因?yàn)樽兞康谋姸?,?dǎo)致變量之間的搭配的可能性成倍的增加,狀態(tài)的轉(zhuǎn)移關(guān)系也就會成倍的增加。這對于編程者來說,與其說是在編程,還不如說是在做一道及其龐雜的邏輯組合題。

  所以,這樣的思路在理論上是可行的,但在實(shí)際中是不可取的。我們應(yīng)該盡量的去其枝葉,找到能夠貫穿整個(gè)系統(tǒng),標(biāo)示不同的狀態(tài)以及模式的變量或者結(jié)構(gòu)。最終,我們以鍵盤的輸入鍵值為主線,輔以各種的全局變量,來控制系統(tǒng)狀態(tài)的變化。鍵值雖然有許多許多,但是因?yàn)橹挥羞@么一個(gè)變量做為狀態(tài)量,系統(tǒng)狀態(tài)的變化,就可以在掌控之中了。所以,在這個(gè)系統(tǒng)中,鍵值變量key_id成為了主角,用戶界面將圍繞其進(jìn)行改變。

  鍵值變量key_id要根據(jù)用戶的輸入進(jìn)行改變。在這里我們就不描繪狀態(tài)
變量是如何轉(zhuǎn)移的。我們介紹對于既定的鍵值變量key_id是如何完成用戶圖形界面的輸出的。

  5 結(jié)語

  目前,國內(nèi)的數(shù)字示波器,除了測量信號的性能指標(biāo)較低外,在系統(tǒng)的整體性、用戶的可操作性等功能上不及國外產(chǎn)品考慮得周詳。

  為了彌補(bǔ)國內(nèi)產(chǎn)品在這方面的缺陷,rigol開發(fā)團(tuán)隊(duì)開發(fā)出的這款ds1000系列數(shù)字示波器除了實(shí)現(xiàn)高存儲深度,高測量精度等功能之外,更是注重了圖形用戶界面的設(shè)計(jì)。繼續(xù)保持其在技術(shù)上的創(chuàng)新和人性化、本土化的優(yōu)勢,新的用戶圖形界面使得用戶能夠比以往更加容易測量與分析波形。隨著儀器的功能增多,會對用戶圖形界面(gui)提出更高的要求,那么就要求gui更加系統(tǒng)化、模塊化、功能化。所以,在這方面我們還有許多工作要做。

  [1]visualdsp++4.0 kernal (vdk)usersguide, analog devices, inc. 2005

  [2]blackfin系列dsp原理與系統(tǒng)設(shè)計(jì) ,陳峰,電子工業(yè)出版社, 2004

  [3]數(shù)據(jù)采集與處理技術(shù),馬明建,周長城,西安交通大學(xué)出版社,2001

  [4]數(shù)字電路設(shè)計(jì)與應(yīng)用實(shí)踐教程,王振紅,機(jī)械工業(yè)出版社,2003

  [5]軍用電子測量儀器應(yīng)用指南,梅勁松,電子工業(yè)出版社,2001

  [6]rigol《ds5000系列數(shù)字示波器技術(shù)文件》,內(nèi)部資料,2004



評論


技術(shù)專區(qū)

關(guān)閉