根據使用的開發工具套件不同,軟件開發流程會有差異,但主要步驟大致相同。對于使用宿主機(PC)的集成化開發環境,軟件開發流程一般包括創建項目、添加文件、編譯連接、下載調試等步驟,如下圖所示。
圖1:嵌入式軟件開發流程
(1)創建工程項目:在配置硬件設備和安裝軟件開發工具后,就可以開始創建工程項目,通常需要選擇項目文件的存儲位置及目標處理器。
(2)添加項目文件:開發人員需要創建源程序文件,編寫應用程序代碼,并添加到工程項目中;還將使用設備驅動程序的庫文件,包括啟動代碼、頭文件和一些外設控制函數,甚至中間件(Middleware)等。這些文件也需要添加到項目中。
(3)配置工程選項:源于硬件設備的多樣性和軟件工具的復雜性,工程項目提供了不少選項,需要開發人員配置,如輸出文件類型和位置、編譯選項和優化類型等,還要根據選用的開發板和在線仿真器,配置代碼調試和下載選項等。
(4)交叉編譯連接:利用開發軟件工具對項目的多個文件分別編譯,生成相應的目標文件,然后連接生成最終的可執行文件映像,以下載到目標設備的文件格式保存。如果編譯連接有錯誤,返回修改;如果沒有錯誤,先進行軟件模擬運行和調試,再下載到開發板運行和調試。
(5)程序下載:目前,絕大多數微控制器都使用閃存(FlashMemory)保存程序。創建可執行文件映像后,需要使用在線仿真器(或串口、網口)將其下載到微控制器的閃存中,實現閃存的編程;還可以將可執行文件下載到SRAM中運行。
(6)運行和調試:程序下載后,可以啟動運行,看是否正常工作。如果有問題,連接在線仿真器,借助軟件開發工具的調試環境進行斷點和單步調試,觀察程序操作的詳細過程。如果應用程序運行有錯誤,返回修改。
————————————————
優匠科技深耕在互聯?服務領域多年,擁有幾百多家的成功案例與資深的專業技術團隊,能夠幫助企業解決很多技術上的難題。
如有興趣合作或是產品開發需求的朋友,歡迎前來咨詢了解!!