啊啊啊流水了啊操逼污污,与妇女日逼视频,亚洲国产日韩欧美一区二区,k8经典网在线观看电影

24小時聯(lián)系電話:18217114652、13661815404

中文

您當前的位置:
首頁>
電子資訊>
技術專題>
嵌入式軟件開發(fā)

技術專題

嵌入式軟件開發(fā)


嵌入式軟件開發(fā)

什么是嵌入式軟件開發(fā)?

嵌入式軟件是一種程序,用于控制與通用計算機不同的各種設備和機器。非計算機設備和工程技術的結合形成了嵌入式系統(tǒng)。如今,嵌入式系統(tǒng)在制造設備,音頻/視頻設備,電信設備,汽車工業(yè),航空,消費類電子產品,游戲機,運動傳感器和醫(yī)學等各個領域都非常流行(如圖1所示)。 

要設計嵌入式系統(tǒng),需要具有操作系統(tǒng),微控制器/微處理器和良好的編程工具。要為嵌入式系統(tǒng)編寫程序,可以使用多種語言,包括Python,QTC ++,C等。嵌入式軟件開發(fā)可以定義為創(chuàng)建機器可理解的代碼(使用任何可用的語言)來運行設備上的特定用途。 

1:嵌入式系統(tǒng)的應用

嵌入式軟件開發(fā)的歷

微控制器和微處理器的興起在嵌入式系統(tǒng)的開發(fā)中起著至關重要的作用。在過去的幾年中,嵌入式軟件的發(fā)展經歷了許多變化。 

在早期,仿真器和匯編器,軟件開發(fā)工具僅由生產芯片(微控制器)的制造商提供。后來,許多不同的公司開始為開發(fā)工具提供完整的解決方案。一些公司只專注于微控制器之類的硬件,而另一些公司則將重心轉移到了諸如匯編器,仿真器和模擬器之類的軟件上。然后,一些公司介入并增加了對高級語言的支持。 

隨著時間的流逝,出現(xiàn)了對實時操作系統(tǒng)(RTOS)的需求,并且公司將重點轉移到了這種系統(tǒng)上。Ready Systems1990年代初開發(fā)了第一個RTOS。導致RTOS發(fā)展的另一個主要因素是微芯片的發(fā)展,芯片的功能變得比以前更強大。隨著微芯片的發(fā)展,工程師可以為特定應用編寫單個程序。可以將程序加載到設備中,并且設備可以根據輸入來處理實時數(shù)據并做出輸出控制決策。 

隨著更多的進步,微芯片的成本也降低了幾美分。現(xiàn)在,我們每天都可以找到嵌入式系統(tǒng),甚至無法想象它們對于我們日常活動的重要性。我們可以在兒童玩具,電風扇,烤面包機,微波爐,空調等中找到嵌入式系統(tǒng)。 

嵌入式軟件開發(fā)工具 

嵌入式軟件開發(fā)工具對于開發(fā)嵌入式設備的高效軟件非常重要??梢允褂枚喾N工具來實現(xiàn)此目的。這些工具的詳細信息在此處列出。 

編輯

編輯器是軟件開發(fā)中最重要的工具之一。該工具可用于以不同的編程語言(包括C,C ++,PythonJava)編寫和編輯代碼??梢允褂貌煌木庉嬈?,這些編輯器是免費軟件,并且附帶價格。選擇編輯器時可能要考慮的另一件事是它的環(huán)境,輕量級是更好的選擇。一些編輯器包括Notepad ++,AtomVisual Studio,NetBeans,KiteGeany。良好的編輯器必須具備以下功能。 

突出顯示語法

代碼導航

自動縮進代碼

自動完成代碼

行號

定期自動保存

注釋多行

概述代碼(包括功能,庫)

突出顯示警告和錯誤 

編譯器 

在最近的發(fā)展之后,源代碼是用高級語言編寫的。編譯器用于將高級代碼轉換為機器可以理解的低級代碼。然后,機器可以使用翻譯后的代碼執(zhí)行所需的任務。有各種可用的編譯器,其中一些是Visual Studio,EclipseNetBeans,MATLAB,ArduinoKeil。 

組裝工 

匯編程序幾乎達到了與編譯器相同的目的,但是還有一段距離。匯編程序將高級代碼轉換為目標代碼,同時將高級代碼轉換為操作碼并解析內存位置。然后,它將目標代碼或匯編代碼轉換為通常稱為機器語言代碼的位級指令。GNU是用于此目的的常見匯編程序之一。 

調試器 

就錯誤跟蹤而言,它是最關鍵的工具。它通過指示和突出顯示錯誤和警告(在發(fā)生的地方)來幫助開發(fā)人員跟蹤錯誤。調試器提供的另一個功能是逐步調試。這樣,開發(fā)人員可以通過執(zhí)行代碼的每一行并監(jiān)視其執(zhí)行狀態(tài)來跟蹤錯誤。上面列出的大多數(shù)編譯器都包含調試器,但最常見的調試器是IDA Pro。該工具在LinuxWindows上均可用。 

連結器 

在嵌入式系統(tǒng)中,程序通常以小塊或模塊的形式編寫。要將所有模塊鏈接在一起,請使用鏈接器工具。這將所有模塊作為輸入,將它們組合在一起,并制作一個信號可執(zhí)行程序。它還可以組合使用不同編程語言創(chuàng)建的目標文件,并將它們合并為一個可執(zhí)行文件(如圖2所示)。GNU鏈接器是最常見的鏈接器之一。 

2:鏈接來自不同編程語言的不同對象 

仿真器 

在使用實際設備之前,在復制目標設備的工具上測試程序很重要。為此,使用了仿真器。仿真器提供目標設備的組件和功能的副本。這樣,開發(fā)人員可以輕松識別在實際設備上執(zhí)行代碼時可能發(fā)生的任何問題。通過使用仿真器,開發(fā)人員可以調整代碼參數(shù)以實現(xiàn)目標設備的最佳性能。優(yōu)化代碼性能后,可以將其部署在實際設備上。

開發(fā)人員很難為項目使用所有不同的工具。因此,為此目的,重要的是要在一個通常稱為集成開發(fā)環(huán)境(IDE)的單一環(huán)境中獲得所有工具。IDE是一種工具,為嵌入式軟件的開發(fā)提供了所有必要的工具。 

嵌入式軟件語言

在嵌入式系統(tǒng)中,使用實時操作系統(tǒng),以便可以同時執(zhí)行多個任務。嵌入式軟件使用不同的語言進行編程,這些語言通常包括Java腳本,PythonC / C ++。所有語言都可以使用不同的操作系統(tǒng)進行處理,這些操作系統(tǒng)可能包括WindowsLinux,micro C / OS,Nucleus RTOS等。但是,編程語言的選擇是嵌入式軟件開發(fā)的關鍵步驟,這取決于不同的因素。這里列出了一些關鍵參數(shù): 

內存大小:嵌入式設備的內存非常有限,用于存儲數(shù)據和代碼。因此,擁有可以有效利用內存的代碼很重要。

速度:希望程序能夠快速執(zhí)行。因此,需要為特定的應用選擇正確的編程語言。

可移植性:我們在不同的工作地點沒有相同的編譯器。因此,編程語言必須能夠在不同的處理器上執(zhí)行。

實現(xiàn):編程語言必須具有更簡單的語法,并且出錯的可能性很小。

維護:語言的維護應該很容易,因為調試舊代碼可能是一項繁瑣的任務。 

嵌入式軟件開發(fā)流程 

嵌入式系統(tǒng)開發(fā)需要注意兩件事:(i)軟件開發(fā),(ii)硬件開發(fā)。Embedder軟件的開發(fā)經歷了一個艱難的過程,因此它可能會為我們提供完美的軟件。為了實現(xiàn)此任務,使用了不同的過程,其中之一就是敏捷開發(fā)方法(如圖3所示)。 

3:嵌入式軟件開發(fā)過程 

第一步是集思廣益,其中的想法需要進行討論和完善,然后才能進入開發(fā)階段。在第二和第三階段中,將設計和開發(fā)該系統(tǒng)。第四階段是關鍵階段,在此階段檢查開發(fā)系統(tǒng)的質量。一旦系統(tǒng)清除了質量檢查,便將其部署。 

使用圖4所示的流程圖可以更詳細地描述開發(fā)階段。在圖4中,我們可以看到,開發(fā)階段可以分為兩個部分,即硬件和軟件,這兩個部分是相互關聯(lián)的。在硬件部分,為目標系統(tǒng)完成組裝,然后執(zhí)行硬件測試,其中也包括軟件部分。在硬件鏈的末端,執(zhí)行最終測試以檢查是否達到了所需的結果。如果未達到結果,則將硬件組裝進行更新(在大多數(shù)情況下是不需要的),并且軟件也將進行更新以獲得所需的結果。 

4:嵌入式軟件開發(fā)的開發(fā)階段

對于軟件開發(fā),使用了編輯-測試-調試方法。在這種方法中,使用了許多工具來獲得期望的結果。在軟件開發(fā)階段,使用了第3節(jié)中列出的所有工具。編輯-測試-調試周期所需的工具也可以使用下面的圖5進行說明。

5:嵌入式軟件開發(fā)的編輯-測試-調試階段

請輸入搜索關鍵字

確定
九龙县| 昌黎县| 肇庆市| 小金县| 望城县| 通山县| 杭锦旗| 汝城县| 松桃| 永康市| 定安县| 吴忠市| 专栏| 天门市| 合山市| 泸州市| 阳朔县| 江达县| 云南省| 蓝山县| 舒城县| 石河子市| 珲春市| 泾阳县| 武夷山市| 青海省| 肥城市| 读书| 筠连县| 德惠市| 蓝山县| 思茅市| 朝阳市| 卢氏县| 安乡县| 临猗县| 松阳县| 宁阳县| 商丘市| 荥阳市| 江西省|