|
上海志盟卓越嵌入式工程師培訓(xùn)_先進(jìn)的IDE支持富媒體嵌入式系統(tǒng),
嵌入式系統(tǒng)開(kāi)發(fā)的性質(zhì)在快速變化。該術(shù)語(yǔ)起源于此類計(jì)算機(jī)系統(tǒng)還是以嵌入方式安裝于用戶設(shè)備的年代。那時(shí)少有用戶界面,甚至根本沒(méi)有用戶界面以反映計(jì)算機(jī)系統(tǒng)的存在。能反映其存在的,最多也就是命令行顯示和一組實(shí)物按鈕而已。然而,隨著系統(tǒng)越來(lái)越精密,這種簡(jiǎn)陋的用戶界面表現(xiàn)出越來(lái)越大的局限性,使得OEM更加趨向于部署更多的面向圖形的、基于屏幕的用戶界面,能通過(guò)一系列菜單或頁(yè)面更多地展現(xiàn)系統(tǒng)功能。
如今,用戶界面已不再僅僅是系統(tǒng)不可分割的一部分,而且還是系統(tǒng)的主要賣點(diǎn)之一。機(jī)動(dòng)車輛的電器和資訊娛樂(lè)裝置不斷朝著大型觸摸型顯示器發(fā)展,強(qiáng)調(diào)的不僅僅是圖形能力,而且還有底層軟件和操作系統(tǒng)的響應(yīng)能力。因此,對(duì)于富媒體用戶界面GUI而言,單純的追求功能和效用是遠(yuǎn)遠(yuǎn)不夠的。最終用戶還要求界面具有很強(qiáng)的吸引力。要做到這點(diǎn),需要增加高性能的動(dòng)畫技術(shù),形成活動(dòng)背景,并在視覺(jué)模式和菜單之間形成便捷的切換。
軟件復(fù)雜度越來(lái)越高
之所以趨向于視覺(jué)吸引,一部分原因是由于高性能32位處理器越來(lái)越多,造價(jià)也越來(lái)越低,而這類處理器又往往具有多核內(nèi)置式圖形處理器(GPU)。這些裝置可用來(lái)減少對(duì)CPU主線程資源的占用,使其可以更好地完成對(duì)實(shí)時(shí)事件和數(shù)據(jù)的處理。處理元素的增加加大了開(kāi)發(fā)流程的復(fù)雜性,也使得多處理器已經(jīng)成為當(dāng)代開(kāi)發(fā)項(xiàng)目的模式。
當(dāng)然,軟件復(fù)雜度越來(lái)越高,并不僅僅是因?yàn)槎鄠(gè)處理器的存在造成的。以往使用文本型菜單樹(shù)狀結(jié)構(gòu)的用戶界面,較容易建立一套用戶界面對(duì)話。由于對(duì)話采用的是命令行顯示的模式化方式展現(xiàn)的,其信息可按照結(jié)構(gòu)化方式展示和檢索。而當(dāng)今的圖形密集型用戶界面則需要采取更具動(dòng)態(tài)性的方式。這種方式通常采用一種事件循環(huán),并要求具備多線程條件來(lái)保證不會(huì)影響對(duì)用戶界面的處理。
用戶實(shí)際上可以在任何時(shí)間,通過(guò)多種渠道完成更新。例如,觸摸式系統(tǒng)可能不只是接受虛擬按鈕的按壓和滾屏移動(dòng),而且還需要識(shí)別多種不同的手勢(shì)。而這些手勢(shì)因當(dāng)時(shí)正在運(yùn)行的應(yīng)用的類型不同,意義也會(huì)各有差別。這些手勢(shì)可能是由在主處理器上運(yùn)行的軟件負(fù)責(zé)分析,也可能是由專用觸摸界面裝置配套的軟件負(fù)責(zé)分析。無(wú)論其來(lái)源如何,手勢(shì)及其它輸入都需要立即處理,并傳送到正確的流程上。
從零開(kāi)始建立一套工作系統(tǒng),需要大量的元件。元件類型多種多樣,從使處理器在接入的顯示器上顯示像素的核心圖形驅(qū)動(dòng)器,到圖形、音像庫(kù),直至界面設(shè)計(jì)工具等。即使對(duì)編程技術(shù)所知甚少的用戶界面設(shè)計(jì)專家,也能設(shè)計(jì)出魅力四射的界面。對(duì)于桌面編程人員而言,上述要求已經(jīng)夠難實(shí)現(xiàn)了。
而更大的難題在于,還需要具有交叉編譯功能的有效工作流程,才能將工作二進(jìn)制文件傳送給嵌入式目標(biāo)平臺(tái)。每一套開(kāi)發(fā)、編譯、鏈接、部署和測(cè)試環(huán)節(jié)都要消耗大量的時(shí)間。
對(duì)于當(dāng)前處于開(kāi)發(fā)期的眾多嵌入式系統(tǒng)而言,連通性也是一項(xiàng)必須考慮的問(wèn)題。嵌入式系統(tǒng)不僅要求能夠在互聯(lián)網(wǎng)上傳輸數(shù)據(jù),而且還要能存儲(chǔ)和操縱需由服務(wù)器在云端同步的結(jié)構(gòu)化數(shù)據(jù)。SQL等數(shù)據(jù)庫(kù)查詢系統(tǒng)及XQuery和JSON等配套網(wǎng)絡(luò)技術(shù),為在線數(shù)據(jù)源提供了必要的連接。但這些也都是嵌入式系統(tǒng)開(kāi)發(fā)商必須置入其目標(biāo)平臺(tái)之中的附加模塊。
而所有嵌入式項(xiàng)目都禁止通過(guò)低級(jí)組件執(zhí)行上述功能。因此,合理選擇含有用戶界面創(chuàng)建、裝置部署和連接所需高級(jí)框架和工具的軟件堆棧,就成了新建嵌入式項(xiàng)目的其中一項(xiàng)重大決策。然后,再以軟件堆棧的具體要求為條件選擇硬件。
采用Linux框架建設(shè)的軟件環(huán)境已成為嵌入式系統(tǒng)的有效平臺(tái)。其中之一是安卓系統(tǒng)。安卓原為谷歌專為移動(dòng)電話和平板電腦開(kāi)發(fā)的系統(tǒng),但現(xiàn)在越來(lái)越多地應(yīng)用于工業(yè)系統(tǒng)及Yocto等嵌入式Linux分布系統(tǒng)。這些平臺(tái)可隨時(shí)支持多數(shù)移動(dòng)和桌面游戲使用的OpenGL等三維圖形界面,同時(shí)還有HTTP和 TCP/IP等網(wǎng)絡(luò)連接系統(tǒng)。但這些系統(tǒng)仍然需要組裝并提供給開(kāi)發(fā)商使用。
利用有效的IDE優(yōu)化工作流程淮陰師范學(xué)院嵌入式, 嵌入式轉(zhuǎn)圖像, 嵌入式系統(tǒng)分酒機(jī), 嵌入式peixun, 嵌入式支架教學(xué), 嵌入式特征提取, 嵌入式編程器, 嵌入式與科技前沿, 鴻蒙OS嵌入式, 大金雙向氣流嵌入式, 嵌入式哪里學(xué), 嵌入式操作系統(tǒng)包括, 如何證明嵌入式軟件, 做嵌入式有哪些課題, 嵌入式智能應(yīng)用前景, 嵌入式第三章作業(yè), 嵌入式自動(dòng)鎖定追蹤, 嵌入式包括哪些, 35歲轉(zhuǎn)行嵌入式, 嵌入式軟件測(cè)試課程, 嵌入式處理器的引腳, 嵌入式養(yǎng)老調(diào)查研究,
隨著集成開(kāi)發(fā)環(huán)境(IDE)的不斷發(fā)展,現(xiàn)在已經(jīng)兼顧到越來(lái)越復(fù)雜的平臺(tái)支持問(wèn)題,使應(yīng)用開(kāi)發(fā)商看不到其中的很多復(fù)雜情況。桌面和移動(dòng)環(huán)境已經(jīng)引入了眾多技術(shù),不斷降低高度動(dòng)畫性的用戶界面的開(kāi)發(fā)難度。只需合理的技能和經(jīng)驗(yàn),就可將其應(yīng)用于嵌入式環(huán)境中。
這類IDE的其中一項(xiàng)重要因素,是能同時(shí)支持桌面和嵌入式兩種環(huán)境。這樣一來(lái),很多的應(yīng)用邏輯和用戶界面都可以直接在桌面環(huán)境下就地開(kāi)發(fā),然后移植到嵌入式對(duì)象上進(jìn)行性能和最終測(cè)試。隨著軟件工程越來(lái)越多地傾向于快捷型開(kāi)發(fā)過(guò)程,嵌入式系統(tǒng)開(kāi)發(fā)也越來(lái)越需要一種能支持快速成型的工作流程。
通過(guò)桌面設(shè)備在對(duì)象上模擬界面的虛擬幀緩沖等技術(shù),無(wú)須反復(fù)部署和在實(shí)際對(duì)象上進(jìn)行測(cè)試,即可確保圖形和動(dòng)畫技術(shù)在目標(biāo)平臺(tái)上被有效使用。基于桌面的用戶界面開(kāi)發(fā),能實(shí)現(xiàn)快速成型,支持潛在客戶和用戶的驗(yàn)收測(cè)試,確保最終產(chǎn)品能取得市場(chǎng)成功。
跨平臺(tái)開(kāi)發(fā)的另一個(gè)關(guān)鍵,是具有統(tǒng)一的平臺(tái)API,該API由開(kāi)放源Qt類庫(kù)提供。經(jīng)過(guò)十多年的發(fā)展,Qt已經(jīng)建立了完善成熟的跨平臺(tái)代碼類庫(kù),并針對(duì)桌面、移動(dòng)和嵌入式對(duì)象項(xiàng)目進(jìn)行優(yōu)化。多年以來(lái),Qt不僅在移動(dòng)電話中得到廣泛應(yīng)用,而且還不斷應(yīng)用于醫(yī)療設(shè)備、機(jī)頂盒及汽車資訊娛樂(lè)和儀表盤系統(tǒng)。
Qt Creator
Qt Creator是支持媒體密集型嵌入式系統(tǒng)開(kāi)發(fā)的IDE之一。它是不久前推出的Qt Enterprise Embedded (Qt企業(yè)嵌入式)環(huán)境的其中一部分。Qt Creator可實(shí)現(xiàn)開(kāi)發(fā)商桌面本地執(zhí)行與開(kāi)發(fā)對(duì)象項(xiàng)目之間的輕松切換,縮短了編輯-編譯-調(diào)試周期;同時(shí)設(shè)有內(nèi)置的裝置調(diào)試,確保開(kāi)發(fā)商能在對(duì)象項(xiàng)目上使用與本地環(huán)境內(nèi)部相同的調(diào)試功能。
Qt Creator頂面為建立圖形密集型嵌入式應(yīng)用系統(tǒng)所需的整套框架,可選用的技術(shù)從HTML5等網(wǎng)絡(luò)技術(shù),直至C++等高性能原生語(yǔ)言。[!--empirenews.page--]
HTML5具有廣為用戶界面和富媒體開(kāi)發(fā)商所用的優(yōu)勢(shì)。JavaScript語(yǔ)言建立在廣泛應(yīng)用回調(diào)功能的事件驅(qū)動(dòng)界面理念上,對(duì)于此類開(kāi)發(fā)項(xiàng)目而言,要比C++更加直觀。不過(guò),HTML5往往會(huì)耗用大量資源,而且不能保證每次都能在用戶界面上實(shí)現(xiàn)流動(dòng)性能。
Qt Enterprise Embedded包括Qt Quick技術(shù)。該技術(shù)采用由下至上結(jié)構(gòu),能形成高性能的流暢用戶界面。使用原生C++類庫(kù)和OpenGL ES,通過(guò)GPU和CPU上的一個(gè)獨(dú)立線程來(lái)完成圖形渲染。對(duì)于開(kāi)發(fā)者而言,Qt Quick提供了一種高級(jí)的聲明性語(yǔ)言QML,它能縮短開(kāi)發(fā)周期,同時(shí)方便與用戶界面設(shè)計(jì)師配合工作。
Qt Enterprise Embedded的其它擴(kuò)展還有廣泛的SQL支持功能。可通過(guò)XQuery和JSON等標(biāo)準(zhǔn)的面向Web型接口,同時(shí)接入本地?cái)?shù)據(jù)庫(kù)和基于網(wǎng)絡(luò)的數(shù)據(jù)庫(kù)。
由于該富媒體環(huán)境可選用很多種技術(shù),Qt Creator提供的框架可建立自定義的本地型編輯器,使企業(yè)能夠創(chuàng)建高效的開(kāi)發(fā)系統(tǒng),用于支持其自有的優(yōu)化技術(shù)選擇,確保順利遷移到高級(jí)嵌入式應(yīng)用開(kāi)發(fā)項(xiàng)目中。
隨著嵌入式系統(tǒng)不斷引入了更加先進(jìn)的用戶界面,開(kāi)發(fā)技術(shù)也隨之不斷變化。先進(jìn)的IDE支持能確保這一演變不僅便于管理,而且其創(chuàng)建的應(yīng)用也能針對(duì)目標(biāo)系統(tǒng)不斷優(yōu)化。 |
|