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