采用Eclipse IDE技術(shù)加快MCU的設(shè)計(jì)工作
更快、更好、更廉價(jià)——產(chǎn)品開(kāi)發(fā)環(huán)境層面的競(jìng)爭(zhēng)日趨白熱化,要求也比以前高。過(guò)去,不同工具間缺乏互操作性是開(kāi)發(fā)人員面臨的主要問(wèn)題,他們不得不花大量時(shí)間來(lái)確?;ゲ僮餍?,浪費(fèi)了產(chǎn)品開(kāi)發(fā)的寶貴資源。
本文引用地址:http://cafeforensic.com/article/172201.htm如何用更少的資源與時(shí)間開(kāi)發(fā)更好的產(chǎn)品?本文將介紹開(kāi)放式源代碼Eclipse集成設(shè)計(jì)環(huán)境(IDE)的優(yōu)勢(shì)以及如何用它來(lái)加速開(kāi)發(fā)微控制器(MCU)。
開(kāi)放式源代碼與Eclipse
顧名思義,開(kāi)放式源意味著源代碼的開(kāi)放性,也就是說(shuō),軟件應(yīng)當(dāng)能夠免費(fèi)再分發(fā),并提供開(kāi)放式源代碼。此外,還要允許他人修改,以衍生出新的軟件,并同時(shí)維護(hù)作者源代碼的完整性(2005年開(kāi)放式源代碼計(jì)劃)。
圖1 Eclipse平臺(tái)的開(kāi)放式可擴(kuò)展架構(gòu)
Eclipse是工具集成的開(kāi)放式平臺(tái)之一,該平臺(tái)采用開(kāi)放式源代碼模式運(yùn)作,并提供公共許可證(提供免費(fèi)源代碼)以及全球發(fā)布權(quán)利。Eclipse平臺(tái)采用基于圖1所示的開(kāi)放式可擴(kuò)展架構(gòu)。
除了Eclipse平臺(tái)的運(yùn)行時(shí)內(nèi)核之外,其所有功能均位于不同的插件中。開(kāi)發(fā)人員既可通過(guò)Eclipse項(xiàng)目的不同插件來(lái)擴(kuò)展平臺(tái)功能,也可利用其他開(kāi)發(fā)人員提供的插件。一個(gè)插件可以插入另一個(gè)插件,從而實(shí)現(xiàn)最大程度的集成。
Eclipse的優(yōu)勢(shì)
Eclipse IDE平臺(tái)具備以下幾方面的優(yōu)勢(shì)。
1 社區(qū)頗具規(guī)模
Eclipse自 2001 年推出以來(lái),已形成大規(guī)模社區(qū),這為設(shè)計(jì)人員提供了許多資源,其中包括圖書(shū)、教程和網(wǎng)站等,以幫助他們利用Eclipse平臺(tái)與工具提高工作效率。Eclipse平臺(tái)和相關(guān)項(xiàng)目、插件等都能直接從eclipse.org網(wǎng)站下載獲得。
2 不斷改進(jìn)
Eclipse的開(kāi)放式源代碼平臺(tái)幫助開(kāi)發(fā)人員持續(xù)充分發(fā)揮其他開(kāi)發(fā)人員提供的大規(guī)模資源優(yōu)勢(shì)。Eclipse在以下多個(gè)項(xiàng)目上不斷改進(jìn)。
● 平臺(tái)項(xiàng)目——側(cè)重于Eclipse本身;
● CDT項(xiàng)目——側(cè)重于C/C++開(kāi)發(fā)工具;
● PDE項(xiàng)目——側(cè)重于插件開(kāi)發(fā)環(huán)境。
3 幫助用戶(hù)
設(shè)計(jì)人員始終能獲得源代碼,因此總能修正工具的錯(cuò)誤,它能幫助設(shè)計(jì)人員節(jié)省時(shí)間,自主控制開(kāi)發(fā)工作。
4 互操作性
Eclipse平臺(tái)采用Java語(yǔ)言編寫(xiě),可在Windows、HP-UX 與Linux等多種開(kāi)發(fā)工作站上部署。開(kāi)放式源代碼工具支持多種語(yǔ)言、多種平臺(tái)以及多種廠(chǎng)商環(huán)境。
5 可擴(kuò)展性
Eclipse采用開(kāi)放式、可擴(kuò)展架構(gòu),因而,它能夠與ClearCase、SlickEdit、Rational Rose以及其他統(tǒng)一建模語(yǔ)言(UML)套件等第三方擴(kuò)展協(xié)同工作,此外,它還能與各種圖形用戶(hù)接口(GUI)編輯器協(xié)同工作,并支持各種插件。
圖2 CCEssential的用戶(hù)界面
針對(duì)MCU開(kāi)發(fā)的Eclipse工具
Code Composer Essentials(CCEssential)既是Eclipse工具的一個(gè)范例,也是為微控制器MSP430開(kāi)發(fā)的一款IDE。這款I(lǐng)DE采用Eclipse平臺(tái)用戶(hù)界面,提供編輯器、視圖和以下功能,如圖2所示。
● 導(dǎo)航器視圖(左)列出項(xiàng)目所有源文件。設(shè)計(jì)人員在此執(zhí)行所有與項(xiàng)目源文件相關(guān)的工作。
● 編輯器(中上方)突出顯示設(shè)計(jì)人員輸入代碼中的語(yǔ)法錯(cuò)誤。設(shè)計(jì)人員在此設(shè)置書(shū)簽或任務(wù)
● 大綱視圖(右上方)列出項(xiàng)目的函數(shù),設(shè)計(jì)人員能夠在源文件中導(dǎo)航。
● 控制臺(tái)視圖(中下方)使設(shè)計(jì)人員能夠查看所有命令與結(jié)果反饋。
● 問(wèn)題視圖(右下方)顯示所有故障,設(shè)計(jì)人員雙擊就能查看故障發(fā)生的位置。
多個(gè)編輯器與視圖窗口使MCU設(shè)計(jì)人員能夠在一個(gè)屏幕中查看所有情況,從而提高了程序的可視性,以便讓用戶(hù)更好地了解程序是否滿(mǎn)足關(guān)鍵目標(biāo)。視窗的靈活性使設(shè)計(jì)人員能夠調(diào)整窗口大小,并根據(jù)個(gè)人喜好重新安排窗口的位置,還支持拖放操作。
利用開(kāi)放式源代碼開(kāi)發(fā)平臺(tái)的內(nèi)核集成技術(shù),加強(qiáng)協(xié)作功能,MCU工具制造商能夠充分發(fā)揮平臺(tái)的重復(fù)使用性,從而集中精力加強(qiáng)內(nèi)核技術(shù)的開(kāi)發(fā)工作,以提高代碼密度,添加更多增強(qiáng)性能,不斷推出新的開(kāi)發(fā)技術(shù)。
采用定制插件開(kāi)展設(shè)計(jì)工作
在封閉式源代碼環(huán)境中評(píng)估LCD顯示屏的MCU器件時(shí),設(shè)計(jì)人員只能購(gòu)買(mǎi)LCD評(píng)估板,將其連接到MCU上來(lái)檢查效果。
這種MCU評(píng)估做法的缺點(diǎn)在于:尋找適當(dāng)?shù)腖CD顯示器并進(jìn)行連接要花費(fèi)大量時(shí)間。如果采用開(kāi)放式源代碼工具,設(shè)計(jì)人員就能采用軟件插件獲得LCD視圖,如圖3所示。
圖3 LCD視圖
LCD 控制器映射于存儲(chǔ)器的某些位置,LCD 視圖在每個(gè)斷點(diǎn)的特定位置讀取存儲(chǔ)器。隨后根據(jù)LCD 面板的相應(yīng)硬件布局處理數(shù)據(jù),結(jié)果則顯示在 LCD 視圖中。
設(shè)計(jì)定制插件
插件面板設(shè)計(jì)人員可用 Eclipse 插件開(kāi)發(fā)環(huán)境(PDE)迅速創(chuàng)建插件,該款配有 Eclipse 軟件開(kāi)發(fā)套件(SDK)的開(kāi)發(fā)環(huán)境可滿(mǎn)足插件開(kāi)發(fā)的需要。圖4顯示了用于設(shè)計(jì)新插件項(xiàng)目的 PDE 模板。
圖4 用于設(shè)計(jì)新插件項(xiàng)目的PDE模板
不妨再舉一個(gè)插件的例子,比如生成外設(shè)配置或按鈕用戶(hù)界面等。采用開(kāi)放式可擴(kuò)展結(jié)構(gòu)和插件開(kāi)發(fā)環(huán)境,設(shè)計(jì)人員可將對(duì)硬件功能的需求直接集成到工具中。
一旦設(shè)計(jì)人員創(chuàng)建了LCD視圖之類(lèi)的插件,他就能與其他有類(lèi)似需求的設(shè)計(jì)人員進(jìn)行共享。設(shè)計(jì)人員能在Eclipse網(wǎng)站的社區(qū)上查找開(kāi)放式源代碼插件與商業(yè)插件。
總結(jié)
MCU設(shè)計(jì)人員可用開(kāi)放式源代碼平臺(tái)來(lái)發(fā)揮用戶(hù)社區(qū)的高效支持與協(xié)作功能,從廣大的設(shè)計(jì)人員中獲得更快的新工具,并通過(guò)開(kāi)放式源代碼修正工具錯(cuò)誤。
利用開(kāi)放式源代碼工具,針對(duì)特定器件實(shí)現(xiàn)擴(kuò)展,MCU設(shè)計(jì)人員受益于針對(duì)具體器件優(yōu)化的開(kāi)發(fā)環(huán)境。他們能創(chuàng)建自己的插件,也能從社區(qū)網(wǎng)站下載現(xiàn)有的插件,從而加速部署進(jìn)程。這不僅有助于加強(qiáng)不同工具間的互操作性,減少過(guò)去互操作性不足給MCU設(shè)計(jì)人員帶來(lái)的麻煩,而且還可釋放設(shè)計(jì)資源,以幫助他們集中精力更快速、更高效地進(jìn)行開(kāi)發(fā)工作。
評(píng)論