當下的嵌入式編程通常需要使用開發套件來加快和簡化開發流程。
例如,Arm Keil 帶有集成 IDE、調試器和一組軟件包,內含 RTOS、驅動程序、中間件 (如 TCP/IP 堆棧) 以及 mbedTLS (SSL/TLS) 或 lvgl (圖形) 之類的庫。
意法半導體的 Cube IDE 以及恩智浦的 MCUXpresso、德州儀器的 CCS、微芯的 MPLAB 等開發工具也提供類似的功能。
當開發者在其中一個框架中啟動項目后,他們要在各種軟件層之上開發應用代碼。
有時開發者可能會選擇繞過所有這些層,而開發直接與硬件通信的代碼。這種開發方式稱為裸機編程。該做法的主要目的如下:
通過對所開發的應用進行充分了解,掌握每一個細節,由此減輕維護負擔
充分實現目標硬件的性能和靈活性,起初比較耗時,但隨著項目的推進,可能會帶來巨大回報
避免花費時間來修復和調試底層軟件層,尤其是在測試不充分、文檔記錄不完整且漏洞百出的情況下
裸機開發可以不使用集成開發套件 (IDE),只需使用任何一款編輯器和 Arm GCC 編譯器即可操作。
當然,也可以使用諸如 Arm Keil 這樣的 IDE 來完成開發工作。無論是哪種情況,開發者都需要了解以下幾個關鍵概念:
內存的組織方式
外設的工作原理
生成的二進制代碼的布局
用于生成所需布局的鏈接器腳本情況
矢量表、中斷和弱符號
CMSIS 設備頭文件:Arm 核心和供應商外設
審核編輯:劉清
-
驅動器
+關注
關注
53文章
8272瀏覽量
147070 -
調試器
+關注
關注
1文章
306瀏覽量
23833 -
LED閃爍
+關注
關注
0文章
29瀏覽量
9874 -
嵌入式編程
+關注
關注
0文章
27瀏覽量
10355 -
gcc編譯器
+關注
關注
0文章
78瀏覽量
3426
原文標題:裸機編程指南
文章出處:【微信號:Arm社區,微信公眾號:Arm社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論