初学 刚写个中断分频程序 请高手看看问题处在哪里 不能进中断 <br /> .title "pint.asm"<br /> .global _c_int00<br /> .mmregs<br /> .def _c_int00<br /> .def _ISR<br />;SWWCR .set 0x002B ;设置"SWWCR"寄存器的地址<br /> .sect ".vectors"<br />rst: B _c_int00<br /> NOP<br /> NOP<br /> .space 15*4*16<br />int0: B _ISR ;<br /> NOP<br /> NOP<br />int1: B _ISR<br /> NOP<br /> NOP<br />int2: B _ISR<br /> NOP<br /> NOP<br /> .space 13*4*16<br /><br /> .text<br />_c_int00:<br /> ssbx INTM<br /> ld #0,DP<br /> stm #0x2000,SP ;设置堆栈指针SP=2000,栈底<br /> nop<br /> stm #0,CLKMD <br /> <br />Statu1:<br /> ldm CLKMD, A<br /> and #01b, A <br /> bc Statu1, ANEQ ;检查是否已经切换到分频模式?<br /> stm #0x07ff,CLKMD ;设置DSP 时钟 10MHZ<br /> nop<br /> <br /> ; stm #0x3FF2,PMST<br /> ; stm #0x7FFF,SWWSR <br /> ; stm #0x0001,SWWCR<br /> ; stm #0xF800,BSCR<br /> stm #0xFFFF, IFR ; 请中断标志<br /> ssbx XF<br /> STM #IMR,AR0<br /> ORM #0007H,*AR0<br /> RSBX INTM<br /> nop<br /> nop<br /> rsbx XF<br /> <br /> nop<br /> <br />loop?: <br /> nop<br /> b loop?<br /> <br />_ISR: ldm ST1,A<br /> and #2000h,A<br /> bc set_1?,AEQ<br /> <br />set_0?:<br /> rsbx XF<br /> rete<br /> <br />set_1?:<br /> ssbx XF<br /> rete<br /> <br /> .end<br /> <br /><br /> 相关链接:<a href='https://bbs.21ic.com/upfiles/img/200712/20071221181026158.rar'>https://bbs.21ic.com/upfiles/img/200712/20071221181026158.rar</a> |
|