This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

求教DSP中断优先级调整问题?



请问DSP中断优先级该如何调整?

  • TI例程包中有一个叫sw_prioritized_interrupts的例程可以参考

  •  请参考文档spru871k(http://www.ti.com/litv/pdf/spru871k) 第七章,

    #1. 中断号越小,优化级越高;

    #2. 通过INTMUXn寄存器配置系统事件与CPU中断的映射关系。

    注,关于这部分的配置方法适用于同DSP内核的所有DSP芯片,与具体器件型号无关。

  • #if (G17PL != 0)
    interrupt void  TINT0_ISR(void)      // CPU-Timer 0
    {
     // Set interrupt priority:
     volatile Uint16 TempPIEIER = PieCtrlRegs.PIEIER1.all;
     IER |= M_INT1;
     IER &= MINT1;                   // Set "global" priority
     PieCtrlRegs.PIEIER1.all &= MG17;   // Set "group"  priority
     PieCtrlRegs.PIEACK.all = 0xFFFF;   // Enable PIE interrupts
     EINT;

       // Insert ISR Code here.......
     cpu_timer0_isr();

       // Restore registers saved:
     DINT;
     PieCtrlRegs.PIEIER1.all = TempPIEIER;

        // Next two lines for debug only to halt the processor here
        // Remove after inserting ISR Code
     /*   asm ("      ESTOP0");
        for(;;);*/
    }
    #endif

    我照例子改了后出现问题,有两个中断的情况,SCIRXINA和TINT0两个中断,我改了两者的中断优先级,可是仿真器仿真时发现只能进这个TINT0中断,这是为什么?

  • Thank you Tony,我用的是F28069资料中没有相应修改对应关系的寄存器啊!