摘要: 本文主要對(duì)Arm Compiler 6編譯器半主機(jī)模式介紹。
關(guān)鍵字:Arm Compiler 6、編譯器、 半主機(jī)模式
在開發(fā)嵌入式應(yīng)用程序時(shí),開發(fā)環(huán)境中可用的資源通常與目標(biāo)硬件上的資源不同。從開發(fā)調(diào)試環(huán)境移植到目標(biāo)板上運(yùn)行的過程就顯得尤為重要。因此在嵌入式開發(fā)時(shí),需要對(duì)以下幾點(diǎn)有所了解:
編譯工具和目標(biāo)環(huán)境。
某些C庫的功能使用的是開發(fā)調(diào)試環(huán)境的資源來實(shí)現(xiàn)的,如果要在目標(biāo)硬件上實(shí)現(xiàn)就要配置這些資源。
工具鏈不知道目標(biāo)板的內(nèi)存映射,因此需要您根據(jù)目標(biāo)板內(nèi)存布局調(diào)整內(nèi)存映射。
嵌入式程序必須執(zhí)行一些初始化,才能運(yùn)行主程序。例如,堆棧的初始化。
本文主要對(duì)編譯工具的運(yùn)行環(huán)境和目標(biāo)環(huán)境的關(guān)系進(jìn)行一些介紹。
在主機(jī)調(diào)試環(huán)境(編譯工具運(yùn)行的環(huán)境)中可以提供一些Arm C庫中的標(biāo)準(zhǔn)C功能,這種機(jī)制稱為半主機(jī)。當(dāng)半主機(jī)執(zhí)行時(shí),目標(biāo)板調(diào)試會(huì)暫停。例如printf輸出調(diào)試信息時(shí),會(huì)使用主機(jī)調(diào)試環(huán)境輸出到主機(jī)顯示器上。在目標(biāo)板恢復(fù)代碼運(yùn)行之前,這段的操作都稱為半主機(jī)操作。調(diào)試主機(jī)在運(yùn)行這些任務(wù)時(shí),目標(biāo)板是知曉的。
半主機(jī)是一種機(jī)制,它使在 ARM 目標(biāo)或仿真器上運(yùn)行的代碼能夠與主機(jī)上的輸入/輸出設(shè)備進(jìn)行通信并使用這些設(shè)備。這些設(shè)備包括鍵盤輸入、屏幕輸出和磁盤 I/O。例如,您可以使用這種機(jī)制來運(yùn)行C庫中的函數(shù)[例如printf()和scanf()]時(shí)使用主機(jī)的屏幕和鍵盤,而不是目標(biāo)板上的屏幕和鍵盤。
半主機(jī)由一組定義好的的軟件指令實(shí)現(xiàn),這些指令從程序控制中生成異常。應(yīng)用程序調(diào)用適當(dāng)?shù)陌胫鳈C(jī)調(diào)用,然后調(diào)試代理處理異常。調(diào)試代理提供與主機(jī)所需的通信。
半主機(jī)接口是在調(diào)試器中建立的,當(dāng)您再開發(fā)環(huán)境中調(diào)試應(yīng)用程序時(shí),就會(huì)實(shí)現(xiàn)這一過程。如下圖所示:
來源:《Arm? Compiler for Embedded User Guide Version 6.18》
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
關(guān)于億道電子
億道電子技術(shù)有限公司(英文名稱:Emdoor Electronics Technology Co.,Ltd)是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于 2002 年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設(shè)計(jì)、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設(shè)計(jì)周期,提升產(chǎn)品可靠性。
20 年來,先后與 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Testplant、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、MicroFocus等多家全球知名公司建立戰(zhàn)略合作伙伴關(guān)系,并作為他們?cè)谥袊鴧^(qū)的主要分銷合作伙伴服務(wù)了數(shù)千家中國本土客戶,為客戶提供從芯片級(jí)開發(fā)工具、EDA 設(shè)計(jì)工具、軟件編譯以及測試工具、結(jié)構(gòu)設(shè)計(jì)工具、仿真工具、電氣設(shè)計(jì)工具、以及嵌入式 GUI 工具等等。億道電子憑借多年的經(jīng)驗(yàn)積累,真正的幫助客戶實(shí)現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標(biāo)。
歡迎關(guān)注“億道電子”公眾號(hào)
了解更多研發(fā)工具軟件知識(shí)