實(shí)現(xiàn)高性價(jià)比家電人機(jī)接口
帶有交互式圖形用戶接口(GUI)功能的液晶顯示屏(LCD)成為目前大部分家電中傳統(tǒng)“機(jī)械式”HMI的高性價(jià)比替代方案。本白皮書介紹這些技術(shù),以及Altera、Altia和Echelon為幾乎所有家電或者消費(fèi)類產(chǎn)品的低成本、高性能HMI提供的創(chuàng)新解決方案體系結(jié)構(gòu)。
引言
傳統(tǒng)上,家電人機(jī)接口(HMI)由按鍵和旋鈕等機(jī)械器件以及顯示指示器組成,這些指示器包括發(fā)光二極管(LED)和真空熒光顯示屏(VFD)等?,F(xiàn)在,家電和消費(fèi)類產(chǎn)品市場(chǎng)發(fā)生了很大變化。隨著液晶顯示屏(LCD)技術(shù)在電視、計(jì)算機(jī)、汽車和移動(dòng)設(shè)備上的廣泛應(yīng)用,其成本不斷下降,帶有交互式圖形用戶接口(GUI)功能的LCD成為目前大部分家電中傳統(tǒng)“機(jī)械式”HMI的高性價(jià)比替代方案。
HMI在家電中的作用
消費(fèi)者總是希望有更簡單的方式實(shí)現(xiàn)和家庭中大量家電的交互,顯示屏,特別是數(shù)字顯示HMI,在這方面的作用越來越重要。最近,AppleiPhone等產(chǎn)品進(jìn)一步推動(dòng)了向圖形交互產(chǎn)品的發(fā)展。iPhone從根本上重新定義了消費(fèi)者對(duì)大批量市場(chǎng)產(chǎn)品的預(yù)期,導(dǎo)致現(xiàn)在的消費(fèi)者習(xí)慣于觸摸虛擬按鍵,在屏幕上滑動(dòng)手指來調(diào)整設(shè)置,甚至使用手勢(shì)來代替復(fù)雜的HMI動(dòng)作。此外,消費(fèi)者還希望產(chǎn)品是“智能”的,能夠輕松獲得豐富的信息,不出錯(cuò),在很多情況下,消費(fèi)者都不用打開手冊(cè)尋找?guī)椭?/P>
在當(dāng)今競爭激烈的消費(fèi)類產(chǎn)品和家電市場(chǎng)上,生產(chǎn)商必須以最小的成本突出產(chǎn)品優(yōu)勢(shì),吸引消費(fèi)者,從而提高市場(chǎng)份額。一項(xiàng)新技術(shù)一般總是首先應(yīng)用在高端產(chǎn)品上,然后過渡到中端產(chǎn)品,最后幾乎成為所有產(chǎn)品的標(biāo)準(zhǔn)功能。最近新出現(xiàn)的技術(shù)包括電冰箱和網(wǎng)絡(luò)家電使用的集成HDTV,以及洗衣機(jī)和甩干機(jī)的智能電源方案等(圖1)。
圖1.具有能源監(jiān)控新功能的洗衣機(jī)實(shí)例
這些功能都有一個(gè)共同點(diǎn):它們需要更高級(jí)的顯示技術(shù)來實(shí)現(xiàn)人機(jī)交互。在很多情況下,通過觸摸屏來實(shí)現(xiàn)這一點(diǎn)。OEM采用觸摸屏來實(shí)現(xiàn)對(duì)現(xiàn)代家電的平滑控制,突出自己的品牌優(yōu)勢(shì),滿足當(dāng)前消費(fèi)者的需求。使用數(shù)字顯示屏技術(shù)替代機(jī)械HMI最終加速了開發(fā),而且能夠重新利用體系結(jié)構(gòu),從長遠(yuǎn)看,由于GUI軟件和可編程邏輯器件(PLD)技術(shù)的進(jìn)步,設(shè)計(jì)成本會(huì)越來越低。家電觸摸屏是目前消費(fèi)類產(chǎn)品的必然方向,不斷推動(dòng)“數(shù)字生活方式”市場(chǎng)的發(fā)展。
2
觸摸屏技術(shù)
觸摸屏這種顯示設(shè)備能夠探測(cè)到顯示區(qū)域一定范圍內(nèi)“觸點(diǎn)”的出現(xiàn)及其位置。這一般通過手指或者塑料觸摸筆來實(shí)現(xiàn)。最新的觸摸技術(shù)使用“多觸點(diǎn)”傳感技術(shù),一個(gè)人使用兩個(gè)手指來操作一個(gè)目標(biāo),例如AppleiPhone,或者多人在一個(gè)屏幕上相互協(xié)作,進(jìn)行交互,例如微軟的表面計(jì)算技術(shù)。
觸摸技術(shù)發(fā)明于上個(gè)世紀(jì)60年代后期,最先應(yīng)用于企業(yè)研究實(shí)驗(yàn)室計(jì)算機(jī)輔助學(xué)習(xí)終端以及商用電話系統(tǒng)中。然而,這一技術(shù)并沒有得到廣泛的市場(chǎng)應(yīng)用,直到最近某些產(chǎn)品的推出,這一技術(shù)才逐漸流行起來,主要應(yīng)用在移動(dòng)電話市場(chǎng)。消費(fèi)者最先接觸這一技術(shù)是在個(gè)人數(shù)字助理(PDA)上,例如PalmPilot,而隨著AppleiPhone的出現(xiàn),對(duì)這一技術(shù)的需求越來越大。AppleiPhone無縫結(jié)合了觸摸交互功能和引人注目的動(dòng)態(tài)圖形技術(shù)。
觸摸屏主要由三種集成組件構(gòu)成:傳感器、模塊和顯示屏。觸摸屏傳感器是產(chǎn)品的關(guān)鍵組成,它能夠找到手指或者觸摸筆的觸摸位置,然后與底層系統(tǒng)進(jìn)行通信。觸摸屏模塊包括觸摸屏傳感器、控制器IC和軟件。觸摸屏含有集成了顯示面板的模塊。
目前使用的觸摸屏傳感器有各種類型的,包括應(yīng)變、光學(xué)成像、散射信號(hào)、聲脈沖、表面聲波、電容和電阻傳感器等。其中,電阻傳感器由于成本低,是目前應(yīng)用最廣泛的,三分之二的觸摸屏元件生產(chǎn)商生產(chǎn)基于電阻傳感器的觸摸屏。電阻觸摸屏不受水、光或者灰塵等外部因素的影響,能夠?qū)崿F(xiàn)分辨率較高的圖像,支持精確的小目標(biāo)移動(dòng)。電阻觸摸屏使用銦錫氧化物(ITO)玻璃或者顯示屏表面塑料薄膜上的控制器來產(chǎn)生觸摸連接。在激活觸摸屏?xí)r,手指或者觸摸筆按壓塑料薄膜和基底之間的氣隙,從而在ITO薄膜和玻璃之間產(chǎn)生電壓差??刂破鱅C計(jì)算觸摸位置,確定用戶在傳感器上的實(shí)際位置,然后,底層應(yīng)用軟件利用這一信息確定用戶意圖,完成相應(yīng)的動(dòng)作。
采用FPGA實(shí)現(xiàn)觸摸屏
具有較強(qiáng)交互功能GUI的發(fā)展推動(dòng)了對(duì)高性能處理器的需求。然而,目前市場(chǎng)上的很多低成本微控制器單元(MCU)不能滿足在LCD屏上實(shí)現(xiàn)生動(dòng)的交互式GUI的性能需求。而且,現(xiàn)有的MCU不包括對(duì)外設(shè)、圖形加速或者LCD顯示屏的片內(nèi)支持,因此,將所有分立元件組裝起來后,其總成本非常高。
FPGA器件由邏輯單元陣列組成,可以配置完成各種功能,相對(duì)于MCU,其性能和靈活性更強(qiáng),是LCD觸摸屏更好的選擇方案。結(jié)合嵌入式軟核處理器,F(xiàn)PGA很容易支持實(shí)現(xiàn)MCU通用處理功能以及其他外部器件功能。這些器件能夠動(dòng)態(tài)適應(yīng)不同的屏幕尺寸、圖像分辨率、外設(shè)和GUI,非常靈活。
由于具有可編程能力,F(xiàn)PGA以前主要用于驗(yàn)證設(shè)計(jì)概念,構(gòu)建最初的產(chǎn)品原型。然而,隨著半導(dǎo)體亞微米技術(shù)的發(fā)展,低成本FPGA,例如Altera?Cyclone?產(chǎn)品系列,廣泛應(yīng)用在大量的消費(fèi)類電子產(chǎn)品中,包括數(shù)字電視、機(jī)頂盒以及DVD解碼器等。這一趨勢(shì)的自然發(fā)展導(dǎo)致FPGA在家電設(shè)計(jì)中得到進(jìn)一步應(yīng)用。
圖2所示為65-nm低功耗、低成本CycloneIIIFPGA實(shí)現(xiàn)的LCD觸摸屏。CycloneIIIFPGA具有內(nèi)置LCD控制器和觸摸屏接口,因此,不需要其他的LCD控制器和圖形處理器,否則,實(shí)現(xiàn)這類設(shè)計(jì)還得采用這些器件。
3
圖2.采用CycloneIIIFPGA實(shí)現(xiàn)的觸摸屏
采用下一代技術(shù)簡化GUI開發(fā)
傳統(tǒng)的GUI應(yīng)用程序開發(fā)很容易出錯(cuò),需要大量的投入,OEM宣稱高達(dá)70%的質(zhì)量問題來自GUI。這些缺點(diǎn)主要來源于效率低下的工作流程、時(shí)間和成本壓力導(dǎo)致的折衷方案以及在嵌入式系統(tǒng)上開發(fā)非常復(fù)雜的高性能圖形軟件。
GUI設(shè)計(jì)和應(yīng)用程序的開發(fā)一般由設(shè)計(jì)團(tuán)隊(duì)完成,該團(tuán)隊(duì)與軟件工程團(tuán)隊(duì)分開。軟件工程團(tuán)隊(duì)接到設(shè)計(jì)文檔后,手寫編程來進(jìn)行開發(fā)。然后,把結(jié)果送到質(zhì)量檢查組,與最初的設(shè)計(jì)規(guī)范進(jìn)行對(duì)比。找到不對(duì)的地方,標(biāo)記為缺陷,返回到軟件工程團(tuán)隊(duì),在下一次軟件開發(fā)中進(jìn)行改正。這一開發(fā)/質(zhì)量檢查過程(圖3)不斷重復(fù),直到軟件和設(shè)計(jì)文檔之間達(dá)到匹配,彼此可接受。但是,可能需要進(jìn)行很多折衷考慮,最終的應(yīng)用程序和GUI不符合最初的設(shè)計(jì)規(guī)范。由于時(shí)間、成本壓力以及實(shí)際的平臺(tái)性能,一般很難解決剩余問題,而將其簡單地作為已知問題,軟件也就隨之發(fā)布。
圖3.傳統(tǒng)的軟件開發(fā)工作流程
設(shè)計(jì)團(tuán)隊(duì)即使是改變文本位置等很小的細(xì)節(jié),都會(huì)導(dǎo)致軟件工程的變化,有可能出現(xiàn)系統(tǒng)不穩(wěn)定。對(duì)于每一次GUI修改,不論大小,至少需要完成一個(gè)完整的設(shè)計(jì)、軟件工程和測(cè)試周期,以確保質(zhì)量結(jié)果,避免出現(xiàn)意想不到的復(fù)雜的代碼變化。最初版本完成后,對(duì)軟件很小的改動(dòng)以推出不同版本都需要進(jìn)行大量的測(cè)試。最終過渡到新的低成本硬件平臺(tái)意味著軟件工程團(tuán)隊(duì)需要針對(duì)新的軟件應(yīng)用程序接口(API)來重復(fù)整個(gè)過程,放棄了在以前產(chǎn)品上的所有工作。結(jié)果,他們花費(fèi)大量的時(shí)間來推出后續(xù)產(chǎn)品,在很多情況下,無法保證GUI外觀和樣式的連續(xù)性,甚至丟掉了這一特性。
雖然很難徹底消除開發(fā)過程的低效問題,但是,現(xiàn)在可以使用工具和全包技術(shù)解決方案來縮短重復(fù)性的開發(fā)周期,在嵌入式系統(tǒng)設(shè)計(jì)中實(shí)現(xiàn)更好的圖形性能,得到不會(huì)過時(shí)的設(shè)計(jì),并且很容易在硬件系列之間移植這些設(shè)計(jì)。
4
GUI開發(fā)方法
有很多方法實(shí)現(xiàn)GUI開發(fā)。手寫代碼是開發(fā)圖形應(yīng)用程序最常用的方法,也是成本最高的方法。它需要較長的開發(fā)時(shí)間,很小的GUI變化都非常繁瑣,針對(duì)每一器件實(shí)現(xiàn)都需要從頭開始重新編寫代碼。第二種方法是代碼發(fā)生器工具,它提供使用方便的接口來構(gòu)建GUI,定義行為,但是,它產(chǎn)生通用代碼,需要進(jìn)行很多硬件修改才能使其運(yùn)行。第三種方法使用二級(jí)腳本語言以及解釋引擎來處理運(yùn)行時(shí)腳本,需要大量的平臺(tái)資源,很容易出現(xiàn)嚴(yán)重的性能問題和錯(cuò)誤。
第四種方法稱為二進(jìn)制GUI方法,它結(jié)合了專業(yè)GUI構(gòu)建工具,一套強(qiáng)大的軟件API,一些手寫代碼以及高性能嵌入式圖形引擎。設(shè)計(jì)人員利用基于PC的工具可以開發(fā)象素精度很高的GUI,將其輸出到一個(gè)二進(jìn)制數(shù)據(jù)文件。然后,將逐象素設(shè)計(jì)從設(shè)計(jì)人員的桌面直接傳送給開發(fā)人員,不需要進(jìn)行其他的轉(zhuǎn)換。開發(fā)人員然后利用先進(jìn)的高性能GUI引擎以及相關(guān)的API來處理并顯示存儲(chǔ)在二進(jìn)制數(shù)據(jù)文件中的圖形數(shù)據(jù)。這一方法不但占用的平臺(tái)資源少,而且還允許進(jìn)一步修改生成的GUI,不需要改動(dòng)代碼和邏輯,或者進(jìn)行很少的改動(dòng)即可。而且,在模型之間,甚至在不同的硬件設(shè)計(jì)之間,今后都很容易對(duì)應(yīng)用程序進(jìn)行修改,重新使用。
“節(jié)能意識(shí)”應(yīng)用平臺(tái)
為幫助生產(chǎn)商熟悉基于FPGA的HMI解決方案在家電應(yīng)用中的優(yōu)勢(shì),Altera、Echelon和Altia面向高質(zhì)量白色家電市場(chǎng)推出了節(jié)能意識(shí)應(yīng)用平臺(tái)。這一全集成的參考硬件平臺(tái)包括AlteraNios?嵌入式評(píng)估套件(NEEK),與其連接的是Echelon電力線智能收發(fā)器板,一個(gè)4.3"LCD觸摸屏模塊,以及顯示套件內(nèi)部的玻璃背板。
平臺(tái)的主要構(gòu)成是帶有AlteraNiosII嵌入式軟核處理器的AlteraCycloneIIIFPGA。這些器件控制所有系統(tǒng)軟件,包括用于電力線聯(lián)網(wǎng)的EchelonShortStack?API,以及用于HMI和LCD觸摸屏控制的Altia高性能GUI引擎和工具等。含有內(nèi)置LCD控制器、觸摸屏接口、內(nèi)部視頻流水線以及集成高性能GUI引擎和工具,CycloneIIIFPGA幫助系統(tǒng)設(shè)計(jì)人員避免了使用外部LCD驅(qū)動(dòng)器和其他圖形元件,降低了材料(BOM)成本,縮短了產(chǎn)品面市時(shí)間。在家電市場(chǎng)上,從機(jī)械HMI過渡到新一代數(shù)字LCD觸摸屏HMI時(shí),這一系統(tǒng)設(shè)計(jì)方法有明顯的優(yōu)勢(shì)。
NEEKLCD控制器
圖4所示為實(shí)現(xiàn)NEEKLCD控制器設(shè)計(jì)外設(shè)和接口的高級(jí)結(jié)構(gòu)圖。CycloneIIIFPGA的視頻流水線、LCD觸摸屏模塊以及MAX?IICPLD是NEEKLCD控制器的主要組成。
5
圖4.NEEKLCD控制器子系統(tǒng)
視頻流水線
視頻流水線負(fù)責(zé)驅(qū)動(dòng)LCD模塊數(shù)據(jù)總線上的數(shù)據(jù)信號(hào),讀取NiosII處理器產(chǎn)生的幀緩沖數(shù)據(jù)。一組專用Avalon?流(ST)外設(shè)實(shí)現(xiàn)了數(shù)據(jù)單元在不同寬度總線之間的轉(zhuǎn)換,在這一例子中,是24位紅色、綠色和藍(lán)色(RGB)象素輸入流至8位象素輸出流的轉(zhuǎn)換,分別傳送每個(gè)RGB顏色分量。在模塊數(shù)據(jù)總線上,視頻同步發(fā)生器外設(shè)將控制和數(shù)據(jù)信號(hào)進(jìn)行排序,向LCD觸摸屏模塊發(fā)送象素?cái)?shù)據(jù)。
LCD觸摸屏模塊
LCD觸摸屏模塊包括三個(gè)主要組件:
■LCD圖形數(shù)據(jù)接口,它包括一個(gè)24位RGB數(shù)據(jù)總線和某些控制信號(hào),將視頻數(shù)據(jù)傳送給LCD模塊。
■觸摸屏接口包括串行外設(shè)接口(SPI)和并行I/O(PIO)外設(shè)。SPI與模擬器件公司的AD7843觸摸屏數(shù)字轉(zhuǎn)換器芯片進(jìn)行通信,告知出現(xiàn)“觸摸”事件,一條PIO線采集中斷事件,NiosII處理器運(yùn)行驅(qū)動(dòng)所有外設(shè)的軟件。
■LCD控制器接口通過通用PIO外設(shè)的簡單三線接口實(shí)現(xiàn)控制器芯片通信協(xié)議,發(fā)送并接收數(shù)據(jù),對(duì)模塊進(jìn)行配置。NiosII處理器上運(yùn)行的硬件抽象層(HAL)軟件驅(qū)動(dòng)程序?qū)IO外設(shè)進(jìn)行控制。
MAXIICPLD
MAXIICPLD提供CycloneIIIFPGA與其連接外設(shè)的2.5V輸入和3.3V輸出之間的電壓轉(zhuǎn)換。它還可以用作FPGA和LCD模塊之間的顏色解復(fù)用器:它接收來自FPGA的8位時(shí)分復(fù)用(TDM)流,將其轉(zhuǎn)換回24位并行RGB格式,顯示在LCD模塊上。
1注意,設(shè)計(jì)人員如果不需要電壓轉(zhuǎn)換或者復(fù)用/解復(fù)用功能,可以在LCD控制器設(shè)計(jì)中去掉MAXIICPLD。
6
f除了NEEK硬件,Altera還提供觸摸屏軟件API、LCD模塊軟件API和視頻流水線子系統(tǒng)API源代碼。關(guān)于NEEKLCD控制器及其硬件和軟件組成的詳細(xì)信息,請(qǐng)參考AN527:實(shí)現(xiàn)LCD控制器。
快速實(shí)現(xiàn)GUI開發(fā)
Altia的GUI開發(fā)和代碼生成軟件套裝為下一代家電開發(fā)功能強(qiáng)大的GUI提供了流暢高效的方法??梢詮乃囆g(shù)家的圖畫或者從經(jīng)過預(yù)構(gòu)建的庫組件中進(jìn)行選擇,建立原型。Altia設(shè)計(jì)原型能夠集成到仿真模型中,開發(fā)團(tuán)隊(duì)、經(jīng)理、領(lǐng)域?qū)<液涂蛻艨梢怨蚕磉@些原型。
完成GUI之后,使用Altia的DeepScreen將原型轉(zhuǎn)換為C代碼。這一應(yīng)用程序利用NiosII處理器,針對(duì)所有圖形操作產(chǎn)生FPGA代碼。如圖5所示,開發(fā)人員利用軟件工具,無縫產(chǎn)生漂亮的彩色圖像,這些圖像輪廓鮮明,支持矢量目標(biāo)、位圖、文本、alpha混合以及縮放和旋轉(zhuǎn)等轉(zhuǎn)換功能。
圖5.Altia設(shè)計(jì)...DeepScreen...實(shí)現(xiàn)
在GUI開發(fā)過程中,使用工具包具有一系列優(yōu)勢(shì)。Altia設(shè)計(jì)使用戶能夠使用多種圖形工具來開發(fā)定制圖像。在這一設(shè)計(jì)環(huán)境中,不需要編程便可以建立圖像。開發(fā)團(tuán)隊(duì)采用現(xiàn)有的和建模工具來集成原型,很容易向用戶和經(jīng)理進(jìn)行演示,在開發(fā)過程中獲得很有價(jià)值的反饋信息,從而避免了由于錯(cuò)誤的理解發(fā)布的規(guī)范而導(dǎo)致重新進(jìn)行設(shè)計(jì)。原型為正確實(shí)現(xiàn)產(chǎn)品外觀和功能提供了明確的方法。很容易改動(dòng)原型,節(jié)省時(shí)間,不需要進(jìn)行昂貴的硬件試制。
DeepScreen代碼發(fā)生器產(chǎn)生在開發(fā)過程中使用的相同圖像,因此,管理人員和用戶在最終產(chǎn)品中得到完全相同的GUI,并且在開發(fā)過程中得到了驗(yàn)證。DeepScreen幾分鐘就可以產(chǎn)生圖像代碼,而不是幾個(gè)月的時(shí)間,因此大大簡化了GUI代碼的產(chǎn)生。圖像代碼可以在不同的產(chǎn)品和模型中實(shí)現(xiàn),因此,生產(chǎn)商獲得了在所有產(chǎn)品代中使用一個(gè)GUI的成本優(yōu)勢(shì)。這些代碼可以在低功耗和高功耗硬件中實(shí)現(xiàn)。
總結(jié)圖形HMI逐漸成為消費(fèi)類產(chǎn)品中必備的功能。今天,LCD觸摸屏在家電市場(chǎng)上迅速得到了應(yīng)用。隨著AppleiPhone等產(chǎn)品的流行,LCD屏幕的成本顯著降低,具有生動(dòng)的GUI特性的觸摸控制被認(rèn)為是一種高端功能。Altera、Altia和Echelon聯(lián)合開發(fā)的節(jié)能意識(shí)應(yīng)用平臺(tái)是革命性的高性價(jià)比方案,在家電中實(shí)現(xiàn)了
7
最現(xiàn)代的HMI功能。這一獨(dú)特的平臺(tái)采用了一系列技術(shù),通過以下方法,降低BOM總成本,縮短開發(fā)周期。
■避免采用外部圖形器件:以前,開發(fā)人員需要在基于MCU的家電設(shè)計(jì)中加入外部LCD控制器和圖形驅(qū)動(dòng)器,實(shí)現(xiàn)觸摸屏顯示功能。采用CycloneIIIFPGA和NiosII嵌入式處理器后,外部元件集成在一個(gè)封裝中,從而降低了系統(tǒng)BOM成本,提高了設(shè)計(jì)集成的靈活性。
■提高芯片設(shè)計(jì)的靈活性:由于FPGA具有內(nèi)在的可編程特性,因此,家電開發(fā)人員可以增加新功能,將外設(shè)集成到內(nèi)核芯片中,甚至能夠解決硬件質(zhì)量問題,不會(huì)影響產(chǎn)品的硬件成本。
■降低GUI開發(fā)成本:AltiaGUI開發(fā)平臺(tái)縮短了軟件開發(fā)時(shí)間,降低了總成本,顯著改變了應(yīng)用GUI的外觀和樣式。
■實(shí)現(xiàn)低成本產(chǎn)品線的多樣化:使用表層技術(shù)、獲得專利的文本表示以及成熟的本地化工具,采用單一ROM鏡像實(shí)現(xiàn)了多品牌、多模型GUI,突出了產(chǎn)品優(yōu)勢(shì)。
評(píng)論
查看更多