[an error occurred while processing this directive]
|
Вот C-callable инициализация регистров
;/*------------------------------------------------------------------*/
;/* Initialize ISR vectors registers */
;/*------------------------------------------------------------------*/
_INT_InitializeVectors:
; init interrupts vector page
MOV T0, mmap(IVPD)
MOV T0, mmap(IVPH)
RPT #10
NOP
RET
А вот как выглядят векторы прерываний
/*------------------------------------------------------------------*/
;/* */
;/* Interrupt vectors */
;/* 5502 DSP */
;/* */
;/* (C) 2003 XXXXXXXXX */
;/* */
;/*------------------------------------------------------------------*/.sect ".vectors"
.global _VECSTART.ref _c_int00
.ref _TIMER5502_T1_ISR
.ref _UART5502_ISR
.ref _LTXXXX_ISR
.ref _LTXXXX_ISR
_VECSTART:res: .ivec _c_int00, USE_RETA
nmi: .ivec no_isr
int0: .ivec no_isr
int2: .ivec no_isr
tint0: .ivec no_isr
rint0: .ivec no_isr
rint1: .ivec no_isr
xint1: .ivec no_isr
lckint: .ivec no_isr
dmac1: .ivec _LTXXXX_ISR ; DMA1 is ADC input channel
dspint: .ivec no_isr
int3: .ivec no_isr
rint2: .ivec _UART5502_ISR ; UART interrupt is muxed with RINT2
xint2: .ivec no_isr
dmac4: .ivec no_isr
dmac5: .ivec no_isr
int1: .ivec no_isr
xint0: .ivec no_isr
dmac0: .ivec _LTXXXX_ISR ; DMA0 is DAC output channel
sint20: .ivec no_isr
dmac2: .ivec no_isr
dmac3: .ivec no_isr
tint1: .ivec _TIMER5502_T1_ISR ; Timer1 is global clock timer
i2c: .ivec no_isr
berr: .ivec no_isr
dlog: .ivec no_isr
rtos: .ivec no_isr
sint27: .ivec no_isr
sint28: .ivec no_isr
sint29: .ivec no_isr
sint30: .ivec no_isr
sint31: .ivec no_isr
; no_isr interrupt routine;
.text
.def no_isr
no_isr:
B #no_isr
void_isr:
RETI
E-mail: info@telesys.ru