dsp學習ti c64x中斷向量表的配置_第1頁
dsp學習ti c64x中斷向量表的配置_第2頁
dsp學習ti c64x中斷向量表的配置_第3頁
dsp學習ti c64x中斷向量表的配置_第4頁
dsp學習ti c64x中斷向量表的配置_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、TI C64X DSP 中斷向量表的配置(硬件中斷)(轉(zhuǎn))2009-03-03 19:151. 編寫中斷服務(wù)例程在.c 源文件中編寫 ISR 函數(shù) c_XX,用于中斷處理,如:errupt void c_XX (void);注:對于硬件中斷而言,XX = 0015。2初始化中斷向量表,并在內(nèi)存段中的中斷向量表中配置好對應(yīng)的中斷向量首先是把中斷向量表定位到某一內(nèi)存段中,可以在cmd 文件中配置中斷向量表的內(nèi)存,如:MEMORYVECTORS:=00000000h,len=00000400hL2SRAM:len =00000400h,00100000hSDRAM:len=80000000h,=10

2、000000hSECTIONS.vecs:VECTORS.data:L2SRAM.text:L2SRAM.switch:L2SRAM.stack:L2SRAM.bss:L2SRAM.cinit:L2SRAM.far:L2SRAM.cio:L2SRAM.const:L2SRAM.sysmem:SDRAM.tables:L2SRAM然后建立一個.asm 文件,用以配置中斷向量表中的中斷向量,需要一些全局變量,以便其他源文件可以這些變量或者其他源文件的變量,如:.global _vectors.global _c_00.global _vector1.global_vector2.global_ve

3、ctor3.global_vector4.global_vector5.global_vector6.global_vector7.global_c_08;對應(yīng) main()函數(shù)的 c_08 中斷服務(wù)例程(假設(shè)處理的是 EDMA 中斷).global_vector9.global_vector10.global_vector11.global_vector12.global_vector13.global_vector14.global_vector15因為了 rts 的_c_00 中斷,即 RESET 中斷,因此需要引入這個符號:.ref_c_00為了把中斷服務(wù)例程的地址,即中斷向量宏:到中

4、斷向量表中,可以定義一個VEC_ENTRY .macro addrSTWB0,*-B15MVKLaddr,B0MVKHaddr,B0BB0LDW*B15+,B0NOP2NOPNOP.endm為了初始化中斷向量表中的中斷向量,可以定義一個虛擬的中斷向量:_vec_dummy:BB3NOP5接下來就可以配置中斷向量表了:.sect “.vecs”.align 1024_vectors:_vector0:斷VEC_ENTRY_c_00;RESET 中_vector1:VEC_ENTRY_vec_dummy;NMI 不可中斷_vector2:VEC_ENTRY_vec_dummy;保留中斷 1_vec

5、tor3:VEC_ENTRY_vec_dummy;保留中斷 2_vector4:VEC_ENTRY_vec_dummy;外部中斷4_vector5:VEC_ENTRY_vec_dummy;外部中斷5_vector6:VEC_ENTRY_vec_dummy;外部中斷6_vector7:VEC_ENTRY_vec_dummy;外部中斷7_vector8:應(yīng)于 c_VEC_ENTRY_c_08 ; EDMA 控制器中斷 EDMA,對08ISR_vector9:VEC_ENTRY _vec_dummy;JTAGRTDX 中斷_vector10:VEC_ENTRY_vec_dummy;EMIF_SDRA

6、M_Timer 中斷_vector11:VEC_ENTRY_vec_dummy;McBSP_0_Receive 中斷_vector12:VEC_ENTRY_vec_dummy;McBSP_1_Transmit 中斷_vector13:VEC_ENTRY_vec_dummy;Host_Port_Host_to_DSP 中斷_vector14:VEC_ENTRY _vec_dummy;Timer0 中斷_vector15:VEC_ENTRY _vec_dummy;Timer1 中斷3. 在C 程序中指定定義的中斷向量表,并且啟用 CPU 中斷功能在C 程序中,用 CSL 的 IRQ 模塊來設(shè)置中斷比較方便,在設(shè)置之前,需要外部上面的 asm 程序的中斷向量表符號:extern far void vectors();/之所以為 vectors,因為 C 編譯器編譯后自動改名其為_vectors了中斷向量表之后,就可以設(shè)置中斷了:IRQ_setVecs(vectors); /指向 asm 中定義的中斷向量表IRQ_nmiEnable();IRQ_globalEnable();IRQ_map(IRQ_EVT_EDM

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論