基于ARM嵌入式系統(tǒng)GUI開發(fā)研究
隨著嵌入式系統(tǒng)的發(fā)展,它在軟件和硬件上日趨復(fù)雜,對(duì)于人機(jī)交互的效率的要求也日漸提高,特別是一些復(fù)雜的工控設(shè)備和消費(fèi)電子產(chǎn)品。因此,圖形用戶界面(GUI)就從嵌入式系統(tǒng)的系統(tǒng)程序中被獨(dú)立了出來。嵌入式GUI發(fā)展至今,已經(jīng)有了許多的種類,具有了強(qiáng)大的功能。嵌入式GUI已經(jīng)成為一個(gè)成功的嵌入式系統(tǒng)不可缺少的組成部分[1]。本文在ARM為核心的嵌入式系統(tǒng)上進(jìn)行了圖形界面的開發(fā),并對(duì)Windows界面進(jìn)行了模擬。
本文引用地址:http://m.butianyuan.cn/article/149882.htm1 ARM處理器
嵌入式系統(tǒng)是將先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)和電子技術(shù)和各個(gè)行業(yè)的具體應(yīng)用相結(jié)合后的產(chǎn)物。嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適用于應(yīng)用系統(tǒng),對(duì)功能、對(duì)可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。它一般由以下幾部分組成: 嵌入式微處理器 ;外圍硬件設(shè)備;嵌入式操作系統(tǒng)。嵌入式系統(tǒng)是將先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)和電子技術(shù)和各個(gè)行業(yè)的具體應(yīng)用相結(jié)合后的產(chǎn)物,這一點(diǎn)就決定了它必然是一個(gè)技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識(shí)集成系統(tǒng)。所以,介入嵌入式系統(tǒng)行業(yè),必須有一個(gè)正確的定位。例如Palm之所以在PDA領(lǐng)域占有70%以上的市場(chǎng),就是因?yàn)槠淞⒆阌趥€(gè)人電子消費(fèi)品,著重發(fā)展圖形界面和多任務(wù)管理;而風(fēng)河的Vxworks之所以在火星車上得以應(yīng)用,則是因?yàn)槠涓邔?shí)時(shí)性和高可靠性。
特定的應(yīng)用程序ARM(Advanced RISC Machines)微處理器是采用ARM技術(shù)知識(shí)產(chǎn)權(quán)(IP)核的微處理器,這種ARM核技術(shù)是由英國(guó)的ARM公司所授權(quán)。世界各大半導(dǎo)體生產(chǎn)商從ARM公司購(gòu)買其設(shè)計(jì)的ARM微處理器核,根據(jù)各自不同的應(yīng)用領(lǐng)域,加入適當(dāng)?shù)耐鈬娐罚瑥亩纬勺约旱腁RM微處理器芯片進(jìn)入市場(chǎng)。ARM處理器是一個(gè)32位元精簡(jiǎn)指令集(RISC)處理器架構(gòu),其廣泛地使用在許多嵌入式系統(tǒng)設(shè)計(jì)。ARM處理器特點(diǎn):體積小、低功耗、低成本、高性能;支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;大量使用寄存器,指令執(zhí)行速度更快;大多數(shù)數(shù)據(jù)操作都在寄存器中完成;尋址方式靈活簡(jiǎn)單,執(zhí)行效率高;指令長(zhǎng)度固定。
2 圖形用戶界面特征和發(fā)展趨勢(shì)
2.1 圖形用戶界面的特征
圖形用戶界面或圖形用戶接口(Graphical User Interface,GUI)是指采用圖形方式顯示的計(jì)算機(jī)操作環(huán)境用戶接口。與早期計(jì)算機(jī)使用的命令行界面相比,圖形界面對(duì)于用戶來說更為簡(jiǎn)便易用。GUI的廣泛應(yīng)用是當(dāng)今計(jì)算機(jī)發(fā)展的重大成就之一,它極大地方便了非專業(yè)用戶的使用人們從此不再需要死記硬背大量的命令,取而代之的是可用用通過窗口、菜單、按鍵等方式來方便地進(jìn)行操作。而嵌入式GUI具有下面幾個(gè)方面的基本要求:輕型、占用資源少、高性能、高可靠性、便于移植、可配置等特點(diǎn)。的廣泛流行是當(dāng)今計(jì)算機(jī)技術(shù)的重大成就之一,它極大的方便了非專業(yè)用戶的使用,人們不再需要死記硬背大量的命令,而可以通過窗口、菜單方便的進(jìn)行操作。圖形用戶界面的主要特征如下:
1、WIMP
其中W(Windows)指窗口,指用戶或系統(tǒng)的一個(gè)工作區(qū)域。一個(gè)屏幕上可以有多個(gè)窗口。I(IcONs)指圖形,系形象化的圖形標(biāo)志,易于人們隱喻和理解。M(Menu)指菜單,可供用戶選擇的功能提示。P(Pointing Devices),指鼠標(biāo)器等,便于用戶直接對(duì)屏幕對(duì)象進(jìn)行操作。
2、用戶模型
GUI采用了不少Desktop桌面辦公的隱喻,是應(yīng)用者共享一個(gè)直觀的界面框架。由于人們熟悉辦公桌的情況,因而對(duì)計(jì)算機(jī)顯示的圖形符號(hào)的含義容易理解,諸如:文件夾、收件箱、畫筆、工作薄、鑰匙及時(shí)鐘等。
3、直接操作
過去的界面不僅需要記憶大量命令,而且需要制定操作對(duì)象的位置,如行號(hào)、空格數(shù)、X及Y的坐標(biāo)等。采用GUI后,用戶可直接對(duì)屏幕上的對(duì)象進(jìn)行操作,如拖動(dòng)、刪除、插入以至放大和旋轉(zhuǎn)等。用戶執(zhí)行操作后,屏幕能立即給出反饋信息或結(jié)果,因而稱為所見即所得(What you see is what you get)。用視、點(diǎn)(鼠標(biāo))代替了記、擊(鍵盤),給用戶帶來了方便。
2.2 圖形用戶界面的發(fā)展趨勢(shì)
隨著虛擬現(xiàn)實(shí)、科學(xué)計(jì)算可視化及多媒體技術(shù)的飛速發(fā)展,新的人機(jī)交互技術(shù)不斷出現(xiàn),更加自然的交互方式將逐漸為人們所重視。新一代界面的主要特征可描述如下:以用戶為中心、智能化、高帶寬、不限制地點(diǎn)、圖示編程等。
3 ARM嵌入式系統(tǒng)GUI開發(fā)
近年來,嵌入式系統(tǒng)得到了飛速的發(fā)展,產(chǎn)品形態(tài)多種多樣,由于嵌入式產(chǎn)品更加商品化,對(duì)圖形用戶界面(GUI)的要求也越來越高。
3.1 LCD及其驅(qū)動(dòng)
本設(shè)計(jì)采用2.2英寸TFT液晶屏——TFT6758液晶模塊,其工作電壓為3.3V,內(nèi)帶白光LED背光燈,可以直接使用8位、16位或18位總線方式與控制器連接(因?yàn)橐壕K內(nèi)部包含了HD66781和HD66783液晶控制驅(qū)動(dòng)器)。在使用液晶屏?xí)r需要先添加其相應(yīng)的驅(qū)動(dòng)程序,點(diǎn)陣液晶顯示器TFT6758的驅(qū)動(dòng)芯片為HD66781,門驅(qū)動(dòng)(Gate driver)芯片為 HD66783。
圖1 TFT6758液晶模塊應(yīng)用電路
3.2 軟件平臺(tái)的選用
目前在市場(chǎng)上有幾種發(fā)展成熟、比較有代表性的嵌入式GUI開發(fā)軟件,如北京飛漫軟件公司的MiniGUI、美國(guó)Century軟件公司的MicroWindows、挪威Troltech公司的Qt/Embedded等,這幾種GUI系統(tǒng)各具特色,但大部分需要在嵌入式操作系統(tǒng)上進(jìn)行移植,這樣就一定會(huì)增加時(shí)間和精力的投入,所以綜合考慮各方面的因素后,使用ZLG/GUI作為此次設(shè)計(jì)的軟件平臺(tái)。
3.3 模擬Windows界面的設(shè)計(jì)實(shí)現(xiàn)
我們經(jīng)常使用的Windows系統(tǒng)的桌面,便是一個(gè)華麗的圖形用戶界面,所以設(shè)計(jì)模擬了Windows的桌面的圖形界面。
這個(gè)界面的設(shè)計(jì)思想是:在全屏填充一張圖片,作為Windows的桌面背景圖案。經(jīng)過計(jì)算得到狀態(tài)欄的坐標(biāo)值,在液晶顯示屏的下方選擇綠色和藍(lán)色填充兩個(gè)矩形,作為狀態(tài)欄。判斷是否有鍵按下,若沒有就繼續(xù)顯示桌面,有鍵按下就顯示開始菜單。顯示W(wǎng)indows界面流程如圖2所示。模擬Windows界面在LCD上顯示如圖3所示。
圖2 顯示W(wǎng)indows界面流程
圖3 模擬Windows界面
4 結(jié)束語(yǔ)
近年來,隨著嵌入式技術(shù)的發(fā)展,嵌入式系統(tǒng)得到了飛速的發(fā)展,嵌入式設(shè)備將適用于更廣闊的領(lǐng)域,航天、航空、軍事、醫(yī)學(xué),還有與百姓生活息息相關(guān)的家電、運(yùn)輸、通信等等,由于嵌入式產(chǎn)品更加商品化,會(huì)涉及到方便用戶使用的問題,對(duì)圖形用戶界面(GUI)的要求也越來越高,如何開發(fā)一個(gè)適合于自己硬件條件的GUI系統(tǒng),成了嵌入式系統(tǒng)開發(fā)的一個(gè)重要工作內(nèi)容。本次設(shè)計(jì)采用ZLG/GUI作為軟件平臺(tái),對(duì)于復(fù)雜的應(yīng)用可以采用MiniGUI等軟件作為軟件平臺(tái)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論