定时器0中断
我从TI网站上载了一些例子,学习2812。 没有电路板,只进行软件仿真。 其中一个定时器0中断,发现不进中断。 情况是这样的,观察定时器可以计数。 本来我定时器周期设为0XFFFFFFFF. 可是计到0以后,并不恢复为0XFFFFFFFF, 而是0X5F5E100.并且计到0以后,也不进中断。 请高手指教,谢谢!我已经被这个问题困扰了好久。 下面是主程序: #include "DSP281x_Device.h" // DSP281x Headerfile Include File #include "DSP281x_Examples.h" // DSP281x Examples Include File
interrupt void cpu_timer0_isr(void);
void main(void) {
InitSysCtrl();
DINT;
InitPieCtrl();
IER = 0x0000; IFR = 0x0000;
InitPieVectTable();
EALLOW; // This is needed to write to EALLOW protected registers PieVectTable.TINT0 = &cpu_timer0_isr; EDIS; // This is needed to disable write to EALLOW protected registers
InitCpuTimers(); // For this example, only initialize the Cpu Timers
ConfigCpuTimer(&CpuTimer0, 100, 1000000); StartCpuTimer0();
IER |= M_INT1;
PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
EINT; // Enable Global interrupt INTM ERTM; // Enable Global realtime interrupt DBGM
for(; {asm(" nop"; asm(" nop"; }
}
interrupt void cpu_timer0_isr(void) { CpuTimer0.InterruptCount++; //断点在这,但运行不到这里 asm(" nop"; PieCtrlRegs.PIEACK.all = PIEACK_GROUP1; }
|