嵌入式技巧:ARM的三種中斷調(diào)試方法介紹_第1頁
嵌入式技巧:ARM的三種中斷調(diào)試方法介紹_第2頁
嵌入式技巧:ARM的三種中斷調(diào)試方法介紹_第3頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、嵌入式技巧:ARM的三種中斷調(diào)試方法介紹    1嵌入式軟件開發(fā)流程照嵌入式軟件的開發(fā)流程。第一步:工程建立和配置。第二步:編輯源文件。第三步:工程編譯和鏈接。第四步:軟件的調(diào)試。第五步:執(zhí)行文件的固化。在整個流程中,用戶首先需要建立工程并對工程做初步的配置,包括配置處理器和配置調(diào)試設備。編輯工程文件,包括自己編寫的匯編和C語言源程序,還有工程編譯時需要編寫的鏈接腳本文件,調(diào)試過程中需要編寫存儲區(qū)映像文件和命令腳本文件,以及上電復位時的程序運行入1 嵌入式軟件開發(fā)流程 照嵌入式軟件的開發(fā)流程。第一步:工程建立和配置。第二步:編輯源文件

2、。第三步:工程編譯和鏈接。第四步:軟件的調(diào)試。第五步:執(zhí)行文件的固化。 在整個流程中,用戶首先需要建立工程并對工程做初步的配置,包括配置處理器和配置調(diào)試設備。編輯工程文件,包括自己編寫的匯編和C語言源程序,還有工程編譯時需要編寫的鏈接腳本文件,調(diào)試過程中需要編寫存儲區(qū)映像文件和命令腳本文件,以及上電復位時的程序運行入口的啟動程序文件。 對后四種文件的理解很重要,其作用解釋如下: (1) 鏈接腳本文件:在程序編譯時起作用。該文件描述代碼鏈接定位的有關信息,包括代碼段,數(shù)據(jù)段,地址段等,鏈接器必須使用該文件對整個系統(tǒng)的代碼做正確的定位。在SDRAM中調(diào)試程序

3、、在FLASH中調(diào)試或固化后運行的鏈接腳本文件應加以區(qū)分。(在IDE開發(fā)環(huán)境中使用擴展名.ld) (2)命令腳本文件:在SDRAM中調(diào)試程序時起作用。在集成環(huán)境與目標連接時、軟件調(diào)試過程中以及目標板復位后,有時需要集成環(huán)境自動完成一些特定的操作,比如復位目標板、清除看門狗、屏蔽中斷寄存器、存儲區(qū)映射等 。些操作可以通過執(zhí)行一組命令序列來完成,保存一組命令序列的文本文件稱為命令腳本文件(在 IDE開發(fā)環(huán)境中使用擴展名.cs)。 (3)存儲區(qū)映像文件:在SDRAM中調(diào)試程序時起作用。在軟件調(diào)試過程中訪問非法存儲區(qū)在部分處理器和目標板上會產(chǎn)生異常,如果異常沒有

4、處理,則會導致軟件調(diào)試過程無法繼續(xù),為了防止以上問題并調(diào)整仿真器訪問速度以達到最合適的水平,提供這樣一種用于描述各個存儲區(qū)性質(zhì)的文件叫存儲區(qū)映像文件(在IDE開發(fā)環(huán)境中使用擴展名.map)。 在程序的調(diào)試過程中可以選擇使用存儲區(qū)映像文件.map和命令腳本文件. cs配合程序的調(diào)試。 (4) 啟動文件:它主要完成一些和硬件相關的初始化的工作,為應用程序做準備。一般,啟動代碼的第一步是設置中斷和異常向量;第二步是完成系統(tǒng)啟動所必須的寄存器配置;第三步設置看門狗及用戶設計的部分外圍電路;第四步是配置系統(tǒng)所使用的存儲區(qū)分配地址空間; 第五步是變量初始化

5、;第六步是為處理器的每個工作模式設置棧指針;最后一步是進入高級語言入口函數(shù)(Main函數(shù))。 2 中斷程序設計 中斷調(diào)試方面可以采用類似矢量中斷動態(tài)處理方式,讓中斷對應的確定地址代碼調(diào)轉(zhuǎn)到RAM的固定地址處,定義一個函數(shù)指針指向該固定地址,就可以隨時通過替換RAM固定地址處的代碼,實現(xiàn)動態(tài)改變中斷處理函數(shù)。 具體方法是: (1)將中斷源函數(shù)指針定義在RAM中相對的固定地址,建立中斷矢量表;(2)在程序中,調(diào)用具體某中斷源的中斷處理函數(shù); 如: SetInterrupt(IIC_INT,IICWriteIsr); /

6、 聲明IIC中斷處理函數(shù),其中IIC_INT為 IIC中斷源序號,IICWriteIsr為 IIC的寫中斷處理函數(shù) / (3)在0x18處的IRQ或0x1C處的FIQ中斷入口函數(shù)中,獲取中斷源、清除中斷掛起標志、通過已定義的中斷源函數(shù)指針進入用戶具體某中斷處理程序。 采用動態(tài)的中斷處理方法,在中斷源較多的情況下,中斷響應時間和程序性能得到優(yōu)化。另外,在調(diào)試方面,此處理方法具有便于跟蹤調(diào)試的優(yōu)點,并且根據(jù)需要,可以方便變換中斷處理函數(shù)。 3 中斷調(diào)試 軟件調(diào)試可以在SDRAM中或FLASH中進行。在SDRA

7、M中,讀寫方便,訪問速度快。一般軟件調(diào)試應在RAM中完成,但當RAM空間小于FLASH程序空間,程序只能在FLASH運行和調(diào)試時,或者用戶希望了解程序在FLASH中實際運行情況時,就可以在FLASH中進行程序調(diào)試。 進行中斷調(diào)試時,應注意中斷入口位于SDRAM中或FLASH中0x18或0x1c地址,鏈接腳本文件必須使整個系統(tǒng)的代碼正確定位于0x0起始處,但SDRAM或FLASH對應的鏈接腳本文件及工程配置注意區(qū)別。 (1)程序在SDRAM中運行 在SDRAM中調(diào)試,使用SDRAM對應的鏈接腳本文件。調(diào)試過程需要以下幾步:編譯、鏈接工程;連接仿真器和電路板;下載程序(在IDE開發(fā)環(huán)境中使用擴展名.elf);調(diào)試。 下載程序前必須啟動命令

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論