嵌入式軟件開發(fā)方法分析論文

時(shí)間:2021-06-25 15:07:58 論文范文 我要投稿

嵌入式軟件開發(fā)方法分析論文

  摘要:隨著信息化技術(shù)的快速發(fā)展,嵌入式軟件組件開發(fā)方法因其具備針對性的軟件開發(fā)能力而受到業(yè)界廣泛關(guān)注,相關(guān)研究也因此大量涌現(xiàn);诖耍P者簡單分析了基于組件的嵌入式軟件開發(fā)方法,并詳細(xì)論述了Qt下基于組件的嵌入式軟件開發(fā)方法。

嵌入式軟件開發(fā)方法分析論文

  關(guān)鍵詞:組件;嵌入式軟件;Qt

  1、引言

  隨著科學(xué)技術(shù)的快速發(fā)展,傳統(tǒng)代碼式軟件開發(fā)方法已難以滿足電子產(chǎn)品的復(fù)雜性功能需要,使得業(yè)界對擴(kuò)展性好的軟件開發(fā)方法需求程度不斷提升。為了最大化發(fā)揮該開發(fā)方法的優(yōu)勢、推動我國嵌入式軟件開發(fā)領(lǐng)域快速發(fā)展,本文圍繞基于組件的嵌入式軟件開發(fā)方法進(jìn)行了深入探討。

  2、基于組件的嵌入式軟件開發(fā)方法

  2.1組件架構(gòu)

  “控制、監(jiān)視或輔助裝置、機(jī)器和設(shè)備運(yùn)行裝置”被稱作嵌入式系統(tǒng),該系統(tǒng)由硬件與軟件共同構(gòu)成,其中的軟件正是本文研究的嵌入式軟件。嵌入式軟件具備靈活性強(qiáng)、運(yùn)行效率高等優(yōu)勢,為了保證嵌入式軟件的應(yīng)用效率與應(yīng)用質(zhì)量,基于組件的嵌入式軟件開發(fā)必須重點(diǎn)關(guān)注系統(tǒng)組件架構(gòu)設(shè)計(jì),系統(tǒng)的整體資源配置效率也將因此得到提升。具體來說,組件架構(gòu)設(shè)計(jì)需要遵循重用原則、信息傳遞原則和閉包原則。此外,模板的完整性和耦合性也需要得到設(shè)計(jì)人員的重點(diǎn)關(guān)注[1]。

  2.2接口設(shè)計(jì)

  該設(shè)計(jì)需在完成各類系統(tǒng)組件劃分后結(jié)合接口、邏輯操作一一對應(yīng)原則開展;诮M件的嵌入式軟件組件接口設(shè)計(jì)屬于靈活性較高的工作,為提升設(shè)計(jì)的專業(yè)性和針對性,需重點(diǎn)關(guān)注設(shè)計(jì)中的實(shí)際情況;為提升嵌入式組件結(jié)構(gòu)的抽象性,需要采用接口與實(shí)際相分離的方式進(jìn)行設(shè)計(jì);為提高設(shè)計(jì)的準(zhǔn)確性和規(guī)范性控制,需要避免出現(xiàn)私自改動接口設(shè)計(jì)方案的行為。

  2.3開發(fā)流程

  傳統(tǒng)的嵌入式軟件開發(fā)流程可概況為:需求分析→設(shè)計(jì)→實(shí)現(xiàn)→測試→運(yùn)行。雖然該流程可最終滿足開發(fā)需求,但其中存在大量的重復(fù)勞動,使得傳統(tǒng)嵌入式軟件開發(fā)流程效率較低、開發(fā)流程較繁瑣。基于組件的嵌入式軟件開發(fā)流程可概括為:應(yīng)用系統(tǒng)/應(yīng)用系統(tǒng)/應(yīng)用系統(tǒng)→抽取領(lǐng)域共性→組件庫→新應(yīng)用系統(tǒng)/新應(yīng)用系統(tǒng)/新應(yīng)用系統(tǒng)。其中組件庫為組件構(gòu)成的組件倉庫,可有效解決傳統(tǒng)嵌入式軟件開發(fā)存在的不足,具有較高的實(shí)用價(jià)值[2]。

  3、基于組件的嵌入式軟件開發(fā)方法應(yīng)用實(shí)例分析

  3.1開發(fā)環(huán)境

  為提升研究的實(shí)踐價(jià)值,本文選擇了智能氣象站的嵌入式軟件設(shè)計(jì)作為研究對象。在基于組件的嵌入式軟件開發(fā)方法應(yīng)用中,引入了Qt這一跨平臺C++開發(fā)環(huán)境,moc(元對象編譯器)負(fù)責(zé)C++語言的擴(kuò)展。在具體設(shè)計(jì)中,Qt的良好封裝機(jī)制、“信號與槽”新消息機(jī)制大大提升了嵌入式軟件的實(shí)用性。前者的程序開發(fā)和配置不受平臺限制;后者擁有面向?qū)ο、真正信息封裝和連接靈活等優(yōu)勢,共同為基于組件的嵌入式軟件開發(fā)提供了有力支持。

  3.2框架設(shè)計(jì)

  在智能氣象站的嵌入式軟件設(shè)計(jì)中,需首先開展功能需求分析,考慮到智能氣象站主要通過ZigBee(無線)和RS232(有線)方式進(jìn)行智能傳感器上傳數(shù)據(jù)信息的接收。圖1為系統(tǒng)組成及數(shù)據(jù)流圖。結(jié)合圖1發(fā)現(xiàn),該系統(tǒng)由主控單元、兩個(gè)數(shù)據(jù)采集單元(通信器)、傳感器(軟)、日志處理單元、數(shù)據(jù)存儲單元和狀態(tài)處理單元組成,各模塊功能如下所示:(1)主控單位。主要根據(jù)配置信息設(shè)置工作路徑,啟動系統(tǒng)、同步時(shí)鐘、連接信號與槽、創(chuàng)建單元實(shí)例和停止系統(tǒng)也屬于其功能范疇;(2)通信器、傳感器(軟)。主要負(fù)責(zé)數(shù)據(jù)采集,其中傳感器(軟)指的是軟件中定義的一個(gè)組件;(3)存儲器模塊。負(fù)責(zé)接收TCP模塊指令、傳感器模塊指令及數(shù)據(jù),將數(shù)據(jù)存儲至數(shù)據(jù)庫也屬于該模塊功能組成;(4)日志模塊。負(fù)責(zé)接收并記錄信息,以此實(shí)現(xiàn)設(shè)備運(yùn)行狀態(tài)的診斷;(5)狀態(tài)模塊。負(fù)責(zé)接收各模塊的心跳信息、狀態(tài)信息,并以此控制LED閃爍;(6)通信器。由ZigBee通信器、串口通信器組成,主要針對通信通道設(shè)計(jì),負(fù)責(zé)通道的.開閉、數(shù)據(jù)發(fā)送、數(shù)據(jù)獲取,并與傳感器(軟)共同完成數(shù)據(jù)采集,具體采集流程可描述為:外部時(shí)鐘→時(shí)鐘信號→傳感器(軟)→采集指令→通信器→硬件,其中傳感器(軟)向通信器發(fā)出采集指令,通信器則向傳感器(軟)傳遞數(shù)據(jù)信號。

  3.3框架實(shí)現(xiàn)

  3.3.1單元間通信方式單元間通信需要對單元進(jìn)行抽象處理,所有單元均擁有2路輸入和輸出,分別用于指令和數(shù)據(jù)的傳輸。為實(shí)現(xiàn)從CUnitBase繼承來的各單元間指令格式、信號格式的統(tǒng)一,需要進(jìn)行單元通用信號和槽的定義(CUnitBase)。具體設(shè)計(jì)存在四種信號和槽,分別對應(yīng)通用信息、狀態(tài)信息、數(shù)據(jù)信息、指令信息的信號與槽。3.3.2類的繼承關(guān)系在Qt中,基類QObject繼承屬于所有類的來源,Qt自帶的線程類QThread、設(shè)計(jì)采用的單元基礎(chǔ)類CUnitBase便屬于其中典型。類的繼承關(guān)系可概括為:QObjec類→QThread類→CUnitBase類→具體功能類,其中非線程類繼承屬于QObject類。在具體設(shè)計(jì)中,CUnitBase類的定義必須得到重點(diǎn)關(guān)注,每一個(gè)組件的細(xì)化、具體功能類的派生也在設(shè)計(jì)中占據(jù)重要位置。如CControlCenter類,圍繞其開展的設(shè)計(jì)需涉及數(shù)據(jù)連接、日志連接、指令連接和狀態(tài)連接等重要內(nèi)容。CLedControl類、CHYTcpServer類、CHYStatusMonitor類和CHYDataStorag類等在設(shè)計(jì)中同樣占據(jù)重要地位。3.3.3系統(tǒng)配置系統(tǒng)啟動流程為:開始→創(chuàng)建核心應(yīng)用程序→創(chuàng)建主控單元實(shí)例→調(diào)用主控單元配置函數(shù),實(shí)現(xiàn)系統(tǒng)配置→遍歷、開始所有線程→運(yùn)行核心運(yùn)行程序,啟動事件循環(huán)。系統(tǒng)配置流程為:開始→讀取配置文件→根據(jù)配置文件創(chuàng)建相應(yīng)單元→連接單元間信號和槽→設(shè)置同步時(shí)鐘→結(jié)束。其中的調(diào)用主控單元配置函數(shù)步驟,需先后調(diào)動setWorkPath()函數(shù)、loadConfiguration()函數(shù)。3.3.4其他設(shè)計(jì)ZigBee通信器模塊、ZigBee傳感器模塊、串口通信器模塊、串口傳感器模塊和存儲器模塊同樣屬于設(shè)計(jì)的關(guān)鍵內(nèi)容。存儲模塊的存儲器接收信息處理流程為:開始→接收到數(shù)據(jù)→數(shù)據(jù)→計(jì)算QC→存儲到臨時(shí)緩沖區(qū),以及:開始→接收到數(shù)據(jù)→指令→標(biāo)記發(fā)送者→讀取數(shù)據(jù)庫并打包數(shù)據(jù)→發(fā)送報(bào)告到發(fā)送者,由此可更深入了解基于組件的嵌入式軟件開發(fā)方法。

  4、結(jié)語

  綜上所述,基于組件的嵌入式軟件開發(fā)方法具備較為廣闊的應(yīng)用前景。在此基礎(chǔ)上,本文涉及的開發(fā)環(huán)境、框架設(shè)計(jì)、單元間通信方式、類的繼承關(guān)系、系統(tǒng)配置和其他設(shè)計(jì)內(nèi)容,提供了可行性較高的基于組件的嵌入式軟件開發(fā)路徑。為更好地推動嵌入式軟件領(lǐng)域發(fā)展,Qt下的系統(tǒng)實(shí)時(shí)性必須得到重點(diǎn)關(guān)注。

  參考文獻(xiàn)

  [1]王小鋒.基于組件的嵌入式軟件開發(fā)方法[J].電子技術(shù)與軟件工程,2018(8):53.

  [2]戴巍,霍亞,馬尚昌,等.Qt下基于組件的嵌入式軟件框架設(shè)計(jì)及實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2016,36(S1):257-261.

  作者:王浩 吳曉玲 單位:北京動力機(jī)械研究所

【嵌入式軟件開發(fā)方法分析論文】相關(guān)文章:

面向?qū)ο蟮能浖_發(fā)方法分析論文12-16

嵌入式軟件開發(fā)論文11-27

軟件開發(fā)管理平臺的分析與設(shè)計(jì)論文11-10

地基處理軟件開發(fā)分析論文11-27

從方法向方法論的綜述分析論文11-11

軟件工程方法在軟件開發(fā)的應(yīng)用論文11-01

商標(biāo)的翻譯方法分析的論文12-22

嵌入式軟件開發(fā)要學(xué)什么01-15

嵌入式軟件開發(fā)簡歷 -管理資料01-01