用ADC1转换结束后进入中断,EOC4触发ADCINT3,查看中断向量,ADCINT3是INT10.3,按照这个配置,但是无法进入中断,请问这是什么原因?配置如下:
Adc1Regs.INTSEL3N4.bit.INT3E = 1; // Enabled ADCINT3
Adc1Regs.INTSEL3N4.bit.INT3CONT = 0; // Disable ADCINT3 Continuous mode
Adc1Regs.INTSEL3N4.bit.INT3SEL = 4; // setup EOC4 to trigger ADCINT3
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EALLOW; // This is needed to write to EALLOW protected register
PieVectTable.ADCINT1 = &adc1_isr;
PieVectTable.ADCINT2 = &adc2_isr;
PieVectTable.ADCINT3 = &adc3_isr;
EDIS; // This is needed to disable write to EALLOW protected registers
InitAdc1();
// Step 5. User specific code, enable interrupts:
// Enable ADCINT1 in PIE
PieCtrlRegs.PIECTRL.bit.ENPIE = 1;
PieCtrlRegs.PIEIER1.bit.INTx1 = 1; // Enable INT 1.1 in the PIE
PieCtrlRegs.PIEIER1.bit.INTx2 = 1; // Enable INT 1.1 in the PIE
PieCtrlRegs.PIEIER10.bit.INTx3 = 1; // Enable INT 1.1 in the PIE
IER |= M_INT1; // Enable CPU Interrupt 1
IER |= M_INT10; // Enable CPU Interrupt 1
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
Ming Huang2:
刚刚有测试了,最多只能有两个ADCINT,第三个就不响应中断了,上面的配置就是用了三个ADCINT,所以ADCINT3就不响应了。但是不知道为什么只能有两个ADCINT?
用ADC1转换结束后进入中断,EOC4触发ADCINT3,查看中断向量,ADCINT3是INT10.3,按照这个配置,但是无法进入中断,请问这是什么原因?配置如下:
Adc1Regs.INTSEL3N4.bit.INT3E = 1; // Enabled ADCINT3
Adc1Regs.INTSEL3N4.bit.INT3CONT = 0; // Disable ADCINT3 Continuous mode
Adc1Regs.INTSEL3N4.bit.INT3SEL = 4; // setup EOC4 to trigger ADCINT3
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EALLOW; // This is needed to write to EALLOW protected register
PieVectTable.ADCINT1 = &adc1_isr;
PieVectTable.ADCINT2 = &adc2_isr;
PieVectTable.ADCINT3 = &adc3_isr;
EDIS; // This is needed to disable write to EALLOW protected registers
InitAdc1();
// Step 5. User specific code, enable interrupts:
// Enable ADCINT1 in PIE
PieCtrlRegs.PIECTRL.bit.ENPIE = 1;
PieCtrlRegs.PIEIER1.bit.INTx1 = 1; // Enable INT 1.1 in the PIE
PieCtrlRegs.PIEIER1.bit.INTx2 = 1; // Enable INT 1.1 in the PIE
PieCtrlRegs.PIEIER10.bit.INTx3 = 1; // Enable INT 1.1 in the PIE
IER |= M_INT1; // Enable CPU Interrupt 1
IER |= M_INT10; // Enable CPU Interrupt 1
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
Johnson Chen1:
回复 Ming Huang2:
SOC4是由什么来触发的?触发源是否有产生?