EXPORT asm_handle_k1_irq
asm_handle_k1_irq
sub lr,lr,#4 ; 修正返回地址
stmdb sp!,{r0-r12,lr} ; 保存程序执行现场
ldr lr,=isr_return ; 设置中断处理程序返回地址
IMPORT ISR_Uart0
ldr pc,=ISR_Uart0 ; 跳入中断处理程序
isr_return ; 中断处理返回标签
ldmia sp!,{r0-r12,pc}^ ; 恢复程序执行现场,返回继续执行
我的是在初始化程序里面加了这段中断服务程序解决的,程序还是一个好心人给的...
不过我很奇怪,这个相当于把串口中断服务程序的入口地址设置了,如果同时使用多个中断的话是不是每个都要设置呢?
另外,这位哥们你能不能把你的设置堆栈的代码贴出来顺便解释一下,我对汇编实在是没得招