TMS320F280025: ADC配置问题,ADC寄存器无法配置

Part Number: TMS320F280025

Hi Experts:

我在使用280025的ADC时,出现了ADC无法使用。但是这个代码是之前已经验证过可以使用的。

后来在仿真时发现,ADC初始化后,ADC的寄存器的值还是都是0,但其他的外设模块都可以正常使用。

代码如下:

void Drv_AdcInit(void)
{
SetVREF(ADC_ADCA,ADC_INTERNAL,ADC_VREF3P3); //选择内部参考电压3.3V
SetVREF(ADC_ADCC,ADC_INTERNAL,ADC_VREF3P3); //选择内部参考电压3.3V

EALLOW;
AdcaRegs.ADCCTL2.bit.PRESCALE = 0x6; //ADC时钟 = 系统时钟 / 4, ADCCLK = Input Clock / 4.0 = 94.92 / 4.0 = 23.73M
AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1; //ADC上电

AdccRegs.ADCCTL2.bit.PRESCALE = 0x6; //ADC时钟 = 系统时钟 / 4, ADCCLK = Input Clock / 4.0 = 94.92 / 4.0 = 23.73M
AdccRegs.ADCCTL1.bit.ADCPWDNZ = 1; //ADC上电

AdcaRegs.ADCSOC0CTL.bit.TRIGSEL = 0; //软件启动
AdcaRegs.ADCSOC0CTL.bit.ACQPS = 0x10; //采样窗口为26个ADCCLK
AdcaRegs.ADCSOC0CTL.bit.CHSEL = 0x0; //A0

AdcaRegs.ADCSOC1CTL.bit.TRIGSEL = 0; //软件启动
AdcaRegs.ADCSOC1CTL.bit.ACQPS = 0x10; //采样窗口为26个ADCCLK
AdcaRegs.ADCSOC1CTL.bit.CHSEL = 0x1; //A1

AdccRegs.ADCSOC0CTL.bit.TRIGSEL = 0; //软件启动
AdccRegs.ADCSOC0CTL.bit.ACQPS = 0x10; //采样窗口为26个ADCCLK
AdccRegs.ADCSOC0CTL.bit.CHSEL = 0x00; //c0

AdccRegs.ADCSOC1CTL.bit.TRIGSEL = 0; //软件启动
AdccRegs.ADCSOC1CTL.bit.ACQPS = 0x10; //采样窗口为26个ADCCLK
AdccRegs.ADCSOC1CTL.bit.CHSEL = 0x01; //c1

AdcaRegs.ADCINTSEL1N2.bit.INT1E =1; //ADCINT1中断使能
AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 1; //中断脉冲发生在转换结束后
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0; //EOC0触发ADCINT1
AdcaRegs.ADCINTSEL1N2.bit.INT1CONT = 0; //连续转换模式使能

AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //中断标志清零
EDIS;

EALLOW;
PieVectTable.ADCA1_INT = &Drv_AdcaIsr;
EDIS;

IER |= M_INT1;
PieCtrlRegs.PIEACK.bit.ACK1 = 1;

}

请问这是什么问题?