<font color=#C000FF>前提:用的是 ADS1.2 编译器。<br /><br />在 ARM7 处理器中,定时器中断是如何发生的,和51单片机有什么区别?因为51直接有各中断向量表,只要在中断的入口地址处写一条跳转指令即可。而ARM只有异常向量地址入口。是不是ARM中,定时器中断在用汇编写时必须用查询方式来做。是不是象下面这样做的?<br />;===============================<br /> ;//异常入口地址<br /> LDR PC,Rest_Addr<br /> LDR PC,UndefinedAddr<br /> .<br /> .<br /> .<br /> LDR PC,<font color=#FF0080>IRQ_Addr<br /></font> LDR PC,FIQ_Addr<br />;===============================<br /> ;异常处理程序<br /><font color=#FF0080>IRQ_Addr</font><br /> <br /> if(是定时器0中断)<br /> goto:定时器0子程序。<br /> if(是定时器1中断)<br /> goto:定时器1子程序。<br /> if(是UARTO中断)<br /> goto:UARTO子程序。<br /> <br />;===============================</font> |
|