胡珊妹 周亞蘭
摘 要:電子技術不斷發(fā)展,電子產(chǎn)品的更新?lián)Q代速度非常快,軟件功能也在逐漸增加,并且日漸復雜、高端。由此,嵌入式軟件的設計也越來越多地采用系統(tǒng)組件的模式,以適應需求不斷快速變化的產(chǎn)品開發(fā)現(xiàn)狀。文章主要對基于組件的嵌入式軟件的開發(fā)方法進行了分析,表明嵌入式軟件的組件迭代開發(fā)模式在產(chǎn)品開發(fā)中的良好應用效果。
關鍵詞:組件嵌入式;軟件系統(tǒng)開發(fā);電子組裝
如今,市場上出現(xiàn)了越來越多的電子產(chǎn)品,并且其產(chǎn)品的增長速度非???。在這種大環(huán)境下,傳統(tǒng)代碼式開發(fā)已經(jīng)不能適應產(chǎn)品功能上的復雜性,其開發(fā)變得非常困難。并且編程人員如果離開,剩下內(nèi)容開發(fā)則需要新的程序開發(fā)人員對源代碼進行修改,修改的過程非常不容易掌控。此外,各個程序代碼之間存在耦合,僅對一小部分內(nèi)容進行修改,也要對整個產(chǎn)品的源代碼進行測試。在這種開發(fā)模式下,急需要一種擴展性好的軟件開發(fā)方法,嵌入式軟件在應用中能夠從軟件的設計特點以及開發(fā)需求方面出發(fā),在實踐中能夠取得非常好的效果。
1 嵌入式系統(tǒng)組件架構
嵌入式系統(tǒng)在很多領域中運用,并且不同的領域,其使用方式、取得的效果也存在一定差異。為此,可以結合不同領域的產(chǎn)品特征對組件進行開發(fā),并以此組成一個應用化的系統(tǒng)。軟件系統(tǒng)中的組件可以說是一種有著獨立功能的物體,做好不同組件的劃分能夠提高系統(tǒng)資源的配置效率。其特點表現(xiàn)為:組件粒度增大,能夠增加組件的重用難度,但是管理過程中的投入將增大;而如果粒度變小,組件將變得容易復用。在組件的劃分上應該結合模塊的完整性與耦合狀況,還要遵循消息傳遞原則、閉包原則、重用原則等。圖1表示的是智能電能表的一種組件劃分方法。
應用層的任務部分都是一個個單獨的運行模塊,其運行的所有底層驅(qū)動參數(shù)皆使用API層提供的基礎函數(shù)來支持運行。這個應用層模塊的組織是用一個運行的表格來統(tǒng)一組織管理運行,該表格可以放在FLASH中,也可以放在RAM中或者外部的存儲介質(zhì)中。該表格可以方便應用層內(nèi)容的模塊化。
主程序運行結構與相應的單片機有很大關系,但是各個基礎模塊的應用部分具有其可復用性。電量模塊中,電量數(shù)據(jù)的保存與讀取,安全性保護都可以復用。
2 嵌入式組件的接口設計
組件在完成了劃分以后,按照一個接口對應一個邏輯操作的原則。接口實際上是一個調(diào)整性強的操作,不是固定存在的。要想使其抽象性提高,增強其復用能力,就要將接口與實際相分離。并且接口能夠在設計上體現(xiàn)出實際功用。接口的設計能夠比現(xiàn)實隔離程度高,就會降低對接口的影響率,并且,組件接口的設計一般是不能私自改動的,這就要確保各個設計部分能夠規(guī)范、準確。
此外,嵌入式的組件接口在設計上要能夠?qū)崿F(xiàn)軟件與硬件的結合,要對組件的作用以及與其他硬件的隔離程度進行充分考慮。另外,在設計當中還要考慮組件的調(diào)用以及設置流程,分清哪些設計能夠順應客戶需要,應用最簡單的原則對接口進行設計,能夠降低設計的失誤率。文章依舊以智能電能表的分時功能為例,對時鐘組件為實例進行分析,時鐘本身具有服務功能,能夠為其他組件提供時間信息。組件的封裝也是必要的步驟,這是實現(xiàn)接口穩(wěn)定性的前提,能夠在客戶開發(fā)當中應用,在一個組件完成了新的服務功能以后,其他的新功能將由接口來完成,還不會影響到用戶的使用效果。
圖2 實時時鐘組件接口設計
圖2時鐘組件接口表示的是:為了使時鐘上面的時間更加準確,就要對組件內(nèi)部的各個標準進行更新處理,并要為其提供一個驅(qū)動。各個不同的應用部分要按照具體的使用情況操作,并要一次調(diào)節(jié)RTC-tick接口就可以。通過這種方式能夠使硬件平臺與組件相關聯(lián)。并且,組件在運行當中初始時間以及使用的標志都是初始化效果,用戶使用的組件功能要對函數(shù)RTC-init進行調(diào)用。在完成了上述的函數(shù)使用以后,用戶就可以通過另外一個接口RTC-proc使用應用功能。第一個使用的函數(shù)是一種變量,并且能夠?qū)崿F(xiàn)接口功能,有時間的獲取、調(diào)整等,而第二個參數(shù)則是結構體的調(diào)整,可以實現(xiàn)信息的獲取與應用。
3 基于組件嵌入式軟件開發(fā)流程
3.1 傳統(tǒng)的嵌入式軟件開發(fā)過程
傳統(tǒng)的嵌入式軟件開發(fā)模式下,要做出非常多的重復勞動才能獲取更多的用戶需求,還要再對用戶需求進行分析、設計、重復監(jiān)測。
3.2 基于組件嵌入式的軟件開發(fā)流程
嵌入式軟件組件開發(fā)能夠?qū)浖木幠窟M行轉換,并將其作為系統(tǒng)集成的基礎??梢詰谩皬牧汩_始”的設計模式。應為嵌入式系統(tǒng)會在一個特定的領域設計,為此,不同領域內(nèi)的應用系統(tǒng)可以共同開發(fā),從而選擇各個系統(tǒng)的共性,并以此為基礎構建出組件庫。如果有開發(fā)新系統(tǒng)的需求,從組件庫中選擇適合的組件組裝就可以。因為組件倉中的各個組件具有未覆蓋的能力,可以在深入分析以后,使用新的功能。盡量應用完整的開發(fā)模式以及流程對系統(tǒng)組件進行優(yōu)化和使用。如果不能按照系統(tǒng)功能使用各個組件,將不能實現(xiàn)其通用性,不能按照系統(tǒng)功能設計。
4 結束語
文章主要對嵌入式軟件組件開發(fā)方法進行了分析,通過論述可以知道,在智能電能表項目開發(fā)中應用這種組件式的軟件開發(fā)取得非常好的效果。實踐證明,所有應用組件的使用能夠使項目開發(fā)效率提高,還能夠節(jié)省非常多的開發(fā)成本,能夠保證項目質(zhì)量,在項目需求有所變動時,只需要對組件進行升級就可以,不會對其他各部分造成過大的影響。為此,基于組件的嵌入式軟件開發(fā)設計是一種非常好的方法,在產(chǎn)品設計中得到越來越多的應用。
參考文獻
[1]劉剛,邵志清,肖立中,等.基于組件的嵌入式軟件開發(fā)中的幾個關鍵問題[J].計算機應用研究,2010,24(3):62-65.
[2]王洵.基于嵌入式PC和EtherCAT實時以太網(wǎng)的分布式光學組件控制系統(tǒng)研制[A].中國儀器儀表學會東北過程自動化設計專業(yè)委員會第二十次年會暨2010年學術會議論文集[C].2010:158-161.