睿賽德科技宣布全面啟動嵌入式軟件人才計劃,并推出業(yè)內(nèi)首個IoT OS工程師能力認(rèn)證——RAC(RT-Thread開發(fā)者能力認(rèn)證,RT-Thread Ability Certification),旨在推動嵌入式及物聯(lián)網(wǎng)人才的培養(yǎng)和發(fā)展,為企業(yè)的人才需求建立參考標(biāo)桿。
近日,由周立功教授主導(dǎo)撰寫的《嵌入式軟件工程方法與實踐叢書》前三本,共計200萬字,在全國嵌入式系統(tǒng)聯(lián)誼會10周年技術(shù)研討會上正式發(fā)布,目前已由北京航空航天大學(xué)出版社出版,于京東商城盛大發(fā)售。
JAVA嵌入式軟件具有標(biāo)準(zhǔn)的程序接口和協(xié)議,可解決應(yīng)用互聯(lián)帶來的各種問題,消除不同軟件、硬件系統(tǒng)之間的異構(gòu)問題,將Java技術(shù)應(yīng)用到無線數(shù)傳終端產(chǎn)品中主要具有以下幾個方面的好處:可以容易地連接到Internet,這樣系統(tǒng)變成了開放的,提高了設(shè)備的可訪問性;使工業(yè)控制系統(tǒng)中的設(shè)備可以與家用消費電器和自動化設(shè)備通信,增強設(shè)備的功能
設(shè)計開發(fā)“導(dǎo)彈仿真器嵌入式組件”是成功完成某型產(chǎn)品設(shè)計定型的一項核心環(huán)節(jié)。文章以介紹系統(tǒng)的設(shè)計需求為出發(fā)點,接合軟硬件開發(fā)過程中遇到的難點問題,有針對性的總結(jié)了在建立嵌入式系統(tǒng)硬件框架、ARINC429通訊接口設(shè)計、FPGA邏輯設(shè)計、以及嵌入式軟件開發(fā)與實時性優(yōu)化等過程中的一些經(jīng)驗和技術(shù)途徑。特別是在設(shè)計系統(tǒng)中斷服務(wù)程序時,創(chuàng)造性的提出了在定點DSP環(huán)境下依托硬件平臺實現(xiàn)高效數(shù)值運算的若干方法,對于滿足系統(tǒng)實時性處理要求等方面具有一定的應(yīng)用價值。
嵌入式系統(tǒng)是整合了計算機硬件和軟件的集合體,它是通過可編程器件的計算和控制能力完成特定功能的系統(tǒng)。越來越多的嵌入式系統(tǒng)要求有連接網(wǎng)絡(luò)、多媒體信息處理和無線移動通信的能力。然而,飛速發(fā)展不斷有突破的嵌入式系統(tǒng)硬件技術(shù)與相對發(fā)展較慢的軟件技術(shù)形成明顯對比。
人們對嵌入式系統(tǒng)軟件的質(zhì)量提出了更高的要求,而作為保證軟件質(zhì)量最有效手段的測試技術(shù),也越來越受到關(guān)注。目 前嵌入式軟件的開發(fā)語言以C等高級語言為主,因此,對這些高級語言的測試顯得尤為重要.
設(shè)計和開發(fā)工作需要設(shè)立里程碑。每個里程碑結(jié)束前都需要進(jìn)行評審工作。由于嵌入式軟件的運行環(huán)境不同,受到很大的限制,所以在進(jìn)行開發(fā)之前需要進(jìn)行編程規(guī)范工作,編碼的時候需要嚴(yán)格按照編碼要求進(jìn)行工作,每一個條款都需要認(rèn)真執(zhí)行和審查。
分析了嵌入式軟件的特點及測試方法;針對嵌入式軟件的特點,提出了嵌入式軟件系統(tǒng)測試中具有交互式錯誤檢測定位功能的仿真系統(tǒng)架構(gòu)設(shè)計模型,并結(jié)合鐵路微機聯(lián)鎖系統(tǒng)的測試實例進(jìn)行分析。
嵌入式軟件以其附加值高、創(chuàng)新能力強的優(yōu)勢在輻射和帶動產(chǎn)業(yè)結(jié)構(gòu)優(yōu)化、產(chǎn)業(yè)層次提升的過程中正發(fā)揮強大的催化作用。
究竟選擇多任務(wù)還是單任務(wù)方式,依賴于軟件的體系是否龐大。例如,絕大多數(shù)手機程序都是多任務(wù)的,但也有一些小靈通的協(xié)議棧是單任務(wù)的,沒有操作系統(tǒng),它們的主程序輪流調(diào)用各個軟件模塊的處理程序,模擬多任務(wù)環(huán)境。
本文提出在嵌入式實時操作系統(tǒng)上建立實時多任務(wù)軟件系統(tǒng)時,使用軟總線提供數(shù)據(jù)驅(qū)動層以處理多任務(wù)間共享資源的構(gòu)架方式。該方案封裝各種共享資源的操作,在操作系統(tǒng)上構(gòu)建使資源對于其他系統(tǒng)任務(wù)模塊構(gòu)建者透明的數(shù)據(jù)驅(qū)動接口。實驗結(jié)果表明該方案能較好的為各任務(wù)進(jìn)程提供共享資源建立和使用的接口,同時有效地屏蔽由于進(jìn)程資源共享與進(jìn)程獨立性的矛盾而可能產(chǎn)生的錯誤。
針對目前嵌入式軟件開發(fā)工具的不足,提出利用面向?qū)ο蟮募夹g(shù)設(shè)計嵌入式軟件IDE,使設(shè)計人員利用可重用的組件模塊,搭建符合硬件要求的操作系統(tǒng)和軟件系統(tǒng),同時自動初始化編程嵌入式微處理器內(nèi)部各種資源的使用,大大提高開發(fā)效率和軟件質(zhì)量。
由嵌入式系統(tǒng)本身的特性所影響,嵌入式系統(tǒng)開發(fā)與通用系統(tǒng)的開發(fā)有很大的區(qū)別。嵌入式系統(tǒng)的開發(fā)主要分為系統(tǒng)總體開發(fā)、嵌入式硬件開發(fā)和嵌入式軟件開發(fā)3大部分,其總體流程圖如圖4.15所示。
分散加載可以更加方便準(zhǔn)確的指定映像存儲器映射,為映像組件分組和布局提供了全面控制。它能夠描述由載入時和執(zhí)行時分散在存儲器映射中的多個區(qū)組成的復(fù)雜映像映射。雖然,分散加載可以用于簡單映像,但它通常僅用于具有復(fù)雜存儲器映射的映像。
多數(shù)嵌入式應(yīng)用程序最初都是在原型環(huán)境下開發(fā)的。無論什么樣的原型仿真環(huán)境與最終產(chǎn)品環(huán)境都是有差異的。因此,考慮如何將嵌入式應(yīng)用程序從其所依賴的開發(fā)工具或調(diào)試環(huán)境中移植到在目標(biāo)硬件上獨立運行是非常重要的。
本章主要介紹嵌入式應(yīng)用程序的設(shè)計方法。本章中的一些實例程序是以ARM公司的Realview2.2為開發(fā)平臺。由于目前嵌入式應(yīng)用環(huán)境相差非常大,這里主要是通過這些實例程序來更直接地介紹嵌入式應(yīng)用系統(tǒng)的開發(fā)方法,具體的代碼因具體的嵌入式環(huán)境不同而有所差異。
默認(rèn)情況下,C庫利用semihosting機制來提供設(shè)備驅(qū)動級的功能,使得主機能夠用作輸入和輸出設(shè)備。這種機制對于嵌入式開發(fā)十分有用,因為用于開發(fā)的硬件系統(tǒng)通常沒有最終系統(tǒng)的輸入和輸出設(shè)備。
任何運行在實際硬件上的嵌入式應(yīng)用程序,都必須在啟動時實現(xiàn)一些基本的系統(tǒng)初始化。本節(jié)將對此予以詳細(xì)討論。
上一節(jié)介紹了如何使用Scatter文件對程序的代碼和數(shù)據(jù)進(jìn)行放置。但這些方法只有在外設(shè)和堆棧限制在源文件或頭文件中定義好的前提下才能使用。為了增加程序的靈活性,最好在Scatter文件中設(shè)置這些信息,本節(jié)將介紹這些方法。
嵌入式技術(shù)是計算機發(fā)展的趨勢之一,被廣泛應(yīng)用于工業(yè)和軍事領(lǐng)域。SCADE(高安全性的應(yīng)用程序開發(fā)環(huán)境)為嵌入式軟件提供了一套基于模型的開發(fā)方式。從嵌入式軟件的特點入手,對基于模型的嵌入式系統(tǒng)軟件開發(fā)技術(shù)進(jìn)行了深入剖析,并給出了一個基于SCADE的開發(fā)實例。