《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DSP的數字示波器用戶圖形化 (GUI) 的開發
基于DSP的數字示波器用戶圖形化 (GUI) 的開發
摘要: 隨著嵌入式系統應用領域的不斷擴大,系統復雜性也在不斷提高。所以在嵌入式系統中實現用戶圖形化(GUI),已經成為大勢所趨。在測量儀器中,圖形化界面也是廣泛采用,一種是嵌入操作系統,大多數的用戶圖形化界面(GUI)都是在操作系統(如OS、WinCE、Linix)的支持下,調用系統的各種API函數實現的
關鍵詞: DSP GUI 示波器 DS1000
Abstract:
Key words :

       隨著嵌入式系統應用領域的不斷擴大,系統復雜性也在不斷提高。所以在嵌入式系統中實現用戶圖形化(GUI),已經成為大勢所趨。在測量儀器中,圖形化界面也是廣泛采用,一種是嵌入操作系統,大多數的用戶圖形化界面(GUI)都是在操作系統(如OS、WinCE、Linix)的支持下,調用系統的各種API函數實現的。這些操作系統為實現GUI提供了大量的庫函數,也為編程人員提供了界面設計的良好平臺。但是這種嵌入技術,對硬件要求高,相當于嵌入一臺計算機,如利用WinCE就可以十分方便的設計出具有Windows風格的圖形界面。另一種是,直接利用DSP技術,開發小型系統。這種系統精簡,對硬件要求低,但功能相對單一。

       本文這款數字示波器是普源精電(RIGOL)公司推出的DS1000系列,其設計完全自主完成,貼近國人使用習慣。其用戶圖形界面(GUI)是在 VisualDSP++ 4.0 Kernel的基礎上開發的,界面風格緊緊與儀器的功能相聯系。在完成了儀器的波形和菜單等顯示的基礎上,RIGOL團隊也做了一些通用性的用戶圖形界面,如文件管理器等。當然,所設計的用戶圖形界面,在功能強大方面是遠不能與WinCE等所比擬的,但是對于儀器的使用者來說,已經是足夠的方便——因為這畢竟是儀器的用戶圖形界面,而不是掌上電腦PDA的用戶圖形界面。

       用戶界面實現原理

       用戶圖形界面的實現,需要硬件、軟件上的支持。如圖1所示,通過操作平臺(operation platform)的調配,調用顯示程序,顯示程序刷新顯示緩存,再由顯示驅動程序,將顯示緩存中的內容顯示到液晶屏上。

                                     RIGOL DS1000數字示波器用戶圖形界面實現的原理圖
                            圖1 RIGOL DS1000數字示波器用戶圖形界面實現的原理圖

       下面簡要的介紹圖1中主要的幾個組成部分。

       GUI圖形標準庫

       要在用戶圖形界面上顯示各種的圖形、圖案,除了硬件電路的支持外,還需要強大的軟件支持。而其中(GUI)的圖形標準庫為最基礎,而不可或缺的。用戶圖形界面(GUI)的圖形標準庫包括最基本的畫點、畫線、畫矩形、填充矩形、畫圓形、放置bmp格式的圖案、顯示中、英文等函數,該圖形庫功能越強大,就越可以支持復雜的用戶圖形界面(GUI)。

       GUI的操作平臺的支持

       僅僅有了繪制圖形的圖形標準庫,要實現用戶圖形界面,還是遠遠不夠。圖形庫是單一畫面不可缺少的,但是要形成有機的、可操作的用戶圖形界面,還需要后臺有一個穩定、功能強大的操作系統平臺。

       操作平臺根據用戶的外界輸入(一般是鍵盤),以及系統當前的狀態來決定下一步系統的狀態,從而調用相應的GUI界面。如此,便實現了用戶圖形界面。

       實現圖形化的硬件原理

       RIGOL DS1000系列數字示波器采用的是320×234分辨率的TFT液晶顯示器,通過液晶的驅動電路,可以使液晶正常顯示,通過幀 信號同步、行信號同步、數據信號的時鐘(clock)同步,顯示點陣的數據將被從SDRAM中寫入到液晶顯示器的顯示緩沖器中,從而顯示出彩色圖像。

       從圖1可以看出,如果要更新液晶顯示器顯示的內容,我們只需更新LCDbuffer中的顯示數據就可以了。

       用戶圖形界面(GUI)軟件的設計思路

       界面種類的劃分

       對于用戶圖形界面(GUI)的設計不能簡單、統一的完成,要考慮到用戶在各種情況下的操作界面。根據這些界面所具備的共同點,我們將這些界面分成如下的種類,同一種類的界面中將具備相同或者相似的功能區域。每一種界面都會有相應的處理程序,也有專門的數據結構。

       根據實現的不同功能劃分出如下的界面種類:

       A. 背景網格顯示界面;B.波形顯示界面;C. 幫助文檔瀏覽界面;D.菜單顯示界面;E. 文件管理瀏覽器界面;F. 文件名稱輸入界面;J.前景內容顯示界面(包括各種參數顯示信息,測量信息以及提示信息等)。各界面種類如圖2、3所示。

                       RIGOL DS1000數字示波器圖形界面說明1
                              圖2 RIGOL DS1000數字示波器圖形界面說明1

                        RIGOL DS1000數字示波器圖形界面說明2
                             圖3 RIGOL DS1000數字示波器圖形界面說明2

       界面區域與外界輸入的相互配合響應

       由以上可知,顯示的圖形雖然形形色色,但是它們都可以抽象成具有共同屬性的某種數據結構。數據結構就好比是圖形界面的靈魂,掌握了數據結構,就可以讓圖形界面隨之而變。

       那么如何設計、控制、改變這些數據結構就成為實現用戶圖形界面(GUI)的關鍵了。要響應外界用戶的輸入,我們需要制定一套機制運行法則,而這套機制運行法則就是狀態機(system status machine),也是用戶用以操作儀器的操作平臺(operation platform)。依據這套運行法則,我們的系統根據外界的輸入來更改各種界面下使用的數據結構,從而實現用戶對圖形界面的操作。

       當然,在實際的設計中,操作平臺不僅僅是改變GUI的數據結構,還要考慮任務調度以及其他任務模塊中的數據結構的改變。

       數字示波器的用戶圖形界面(GUI)的軟件設計流程

       設計出一個好的用戶圖形界面,是一個龐大而巨細的工程。涉及到方方面面的相互關系,也涉及到實現過程中的許多細節的問題。

        如何理清這些繁多的變化關系是設計的關鍵。RIGOL團隊曾經使用一些全局變量作為各種狀態、各種模式下的標志,用以改變用戶的圖形界面。但是因為變量的眾多,導致變量之間的搭配的可能性成倍的增加,狀態的轉移關系也就會成倍的增加。這對于編程者來說,與其說是在編程,還不如說是在做一道極其龐雜的邏輯組合題。

       所以,這樣的思路在理論上是可行的,但在實際中是不可取的。我們應該盡量的去其枝葉,找到能夠貫穿整個系統、標志不同狀態以及模式的變量或者結構。最終,我們以鍵盤的輸入鍵值為主線,輔以各種的全局變量,來控制系統狀態的變化。鍵值雖然有許多,但是因為只有這么一個變量作為狀態量,系統狀態的變化就可以在掌控之中了。所以,在這個系統中,鍵值變量KEY_ID成為了主角,用戶界面將圍繞其進行改變。

       鍵值變量KEY_ID要根據用戶的輸入進行改變。這里就不描繪狀態變量是如何轉移的。我們介紹對于既定的鍵值變量KEY_ID是如何完成用戶圖形界面輸出的。圖4為實現用戶圖形界面的軟件流程圖。

         RIGOL DS1000系列示波器數字實現用戶圖形界面的軟件流程圖
            圖4 RIGOL DS1000系列示波器數字實現用戶圖形界面的軟件流程圖

       結語

       目前,國內的數字示波器,除了測量信號的性能指標較低外,在系統的整體性、用戶的可操作性等功能上都不及國外產品考慮得周詳。

       為了彌補國內產品在這方面的缺陷,RIGOL開發團隊開發出的這款DS1000系列數字示波器除了實現高存儲深度、高測量精度等功能之外,更是注重了圖形用戶界面的設計。繼續保持其在技術上的創新和人性化、本土化的優勢,新的用戶圖形界面使得用戶能夠比以往更加容易測量與分析波形。

       隨著儀器的功能增多,會對用戶圖形界面(GUI)提出更高的要求,那么就要求GUI更加系統化、模塊化、功能化。所以,在這方面還有許多工作要做。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲专区欧美专区| 老鸭窝毛片一区二区三区| 西西人体一区二区| 亚洲开发第一视频在线播放| 欧美日韩精品一区二区三区| 美国十次了思思久久精品导航| 久久精品一区二区| 久久久国产91| 久久久国产一区二区三区| 欧美亚洲日本一区| 午夜视频一区二区| 亚洲欧美日本国产有色| 亚洲一区日韩在线| 亚洲欧美制服中文字幕| 亚洲欧美制服另类日韩| 亚洲欧美视频在线观看视频| 亚洲一区影音先锋| 亚洲欧美日韩综合国产aⅴ| 亚洲欧美日韩一区二区| 亚洲欧美制服中文字幕| 欧美影院久久久| 久久久xxx| 免费看的黄色欧美网站| 欧美风情在线观看| 欧美日韩国产在线一区| 欧美午夜寂寞影院| 国产精品久久久久高潮| 国产精品视频yy9099| 国产精品美女久久久久av超清 | 免费成人美女女| 欧美激情精品久久久久久| 欧美日韩国产不卡| 欧美三级电影网| 国产精品亚洲а∨天堂免在线| 国产精品日韩| 国产一区二区三区四区在线观看| 国模精品一区二区三区| 在线播放中文字幕一区| 亚洲精品欧美日韩| 亚洲免费一在线| 午夜影院日韩| 亚洲国内欧美| 一本一本久久a久久精品综合麻豆| 一本久久青青| 午夜精品偷拍| 久久精品国产一区二区三| 麻豆精品视频| 欧美日韩在线观看一区二区| 国产精品女主播| 狠狠色狠狠色综合人人| 亚洲国产精品国自产拍av秋霞| 99精品热6080yy久久 | 亚洲人体影院| 亚洲综合99| 久久午夜精品一区二区| 欧美精品综合| 国产精品永久免费在线| 在线日韩电影| 亚洲欧美成人| 亚洲欧洲日韩在线| 性欧美激情精品| 欧美成人精品一区二区三区| 国产精品扒开腿做爽爽爽软件| 国产一区二区三区日韩欧美| 亚洲欧洲一区二区三区| 午夜精品久久久久久久久久久| 亚洲国产人成综合网站| 亚洲一级免费视频| 久久综合999| 欧美午夜片在线观看| 精品成人一区二区三区四区| 一区二区三区欧美视频| 亚洲国产成人porn| 亚洲欧美在线aaa| 欧美激情精品久久久| 国产视频久久网| 亚洲美女淫视频| 小嫩嫩精品导航| 一区二区高清视频在线观看| 久久精品一区二区三区四区| 欧美日产国产成人免费图片| 狠狠色狠狠色综合日日91app| 亚洲精品在线视频| 欧美一区亚洲| 亚洲欧美国产不卡| 欧美精品成人| 好吊妞**欧美| 亚洲欧美日韩中文播放| 国产精品久久久久久久免费软件| 亚洲美女在线看| 久久成人免费网| 国产精品高潮呻吟| 亚洲精选成人| 亚洲国产另类精品专区| 久久国产黑丝| 国产精品国产馆在线真实露脸| 亚洲国产精品久久| 亚洲成人中文| 久久福利毛片| 国产精品免费一区二区三区在线观看 | 久久精品99国产精品酒店日本| 在线综合亚洲| 一区二区三区你懂的| 牛牛国产精品| 韩国v欧美v日本v亚洲v | 亚洲欧美激情一区| 亚洲线精品一区二区三区八戒| 欧美超级免费视 在线| 国产一区二区三区高清| 亚洲欧美日韩一区在线观看| 亚洲一区二区三区精品在线观看 | 免费成人黄色片| 黑人巨大精品欧美黑白配亚洲| 亚洲永久在线| 亚洲女同性videos| 欧美视频在线观看一区| 日韩网站在线| 一区二区不卡在线视频 午夜欧美不卡在 | 亚洲精品乱码久久久久久按摩观| 久久琪琪电影院| 国产自产精品| 久久se精品一区二区| 久久精品亚洲热| 国内外成人免费激情在线视频网站| 亚洲欧美综合另类中字| 欧美一区二区| 国产日韩欧美夫妻视频在线观看| 亚洲欧美精品一区| 久久黄色小说| 精品av久久久久电影| 亚洲国产精品久久久久婷婷884| 久久亚洲捆绑美女| 在线成人激情黄色| 亚洲精品乱码久久久久久按摩观| 免费在线观看日韩欧美| 亚洲欧洲精品一区二区| 一区二区三区精品久久久| 欧美另类一区二区三区| 99精品视频一区| 亚洲欧美区自拍先锋| 国产目拍亚洲精品99久久精品 | 欧美一区二区在线视频| 久久天堂av综合合色| 亚洲第一黄色| 一级成人国产| 国产精品久在线观看| 欧美日韩视频在线一区二区 | 麻豆国产精品777777在线| 1000部国产精品成人观看| 亚洲人成久久| 欧美区在线播放| 亚洲特色特黄| 久久久久久久精| 亚洲国产你懂的| 一区二区三区欧美视频| 国产精品麻豆成人av电影艾秋| 午夜在线电影亚洲一区| 免费成人网www| 日韩午夜在线电影| 欧美怡红院视频| 精品99一区二区| 亚洲视频图片小说| 国产一二三精品| 亚洲国产一区二区三区在线播| 欧美日韩亚洲一区二区三区四区| 亚洲综合不卡| 玖玖玖免费嫩草在线影院一区| 91久久精品美女高潮| 亚洲专区一区| 永久555www成人免费| 亚洲午夜免费视频| 国户精品久久久久久久久久久不卡| 最新亚洲一区| 国产精品一卡| 亚洲高清在线视频| 欧美日韩亚洲系列| 欧美在线黄色| 欧美日韩国产一中文字不卡| 亚洲欧美日韩成人高清在线一区| 老司机一区二区| 中文精品视频| 免费观看成人| 亚洲欧美日韩中文播放| 欧美激情精品久久久| 亚洲欧美日韩国产成人精品影院 | 欧美国产激情二区三区| 宅男噜噜噜66一区二区| 老司机精品久久| 国产精品99久久不卡二区| 久久亚洲影音av资源网| 一卡二卡3卡四卡高清精品视频| 久久人人九九| 亚洲视频在线观看| 欧美aⅴ99久久黑人专区| 亚洲字幕一区二区| 欧美视频久久| 亚洲人成在线观看| 国产偷国产偷亚洲高清97cao| 一区二区av在线| 亚洲福利在线观看|