您好,
我想在突发模式下对一组ADC输入进行采样,然后在最后一个输入完成后中断处理器。 是否有机制可以做到这一点? 我目前在第一个样本完成后立即得到中断,这太早了,无法读取所有样本。
谢谢!
亚伦
目前为止我的设置代码如下:
//来自SPRUHM9D表9-22
#define BURSTTRIGSEL__EPWM1_ADCSOCA 5.
//
//选择要转换的通道
//
EALLOW;
AdcaRegs.ADCBURSTCTL.bit.BURSTEN = 1;
AdcaRegs.ADCBURSTCTL.bit.BURSTTRIGSEL = BURSTTRIGSEL__EPWM1_ADCSOCA;
AdcaRegs.ADCBURSTCTL.bit.BURSTSIZE = 7;
// SOC0
AdcaRegs.ADCSOC0CTL.bit.CHSEL = 1;// FSR0
AdcaRegs.ADCSOC0CTL.bit.ACQPS = acqps;
// SOC1
AdcaRegs.ADCSOC1CTL.bit.CHSEL = 2;// FSR1
AdcaRegs.ADCSOC1CTL.bit.ACQPS = acqps;
// SOC2
AdcaRegs.ADCSOC2CTL.bit.CHSEL = 3;// FSR2
AdcaRegs.ADCSOC2CTL.bit.ACQPS = acqps;
// SOC3
AdcaRegs.ADCSOC3CTL.bit.CHSEL = 4;// FSR3
AdcaRegs.ADCSOC3CTL.bit.ACQPS = acqps;
// SOC4
AdcaRegs.ADCSOC4CTL.bit.CHSEL = 5;// FSR4
AdcaRegs.ADCSOC4CTL.bit.ACQPS = acqps;
// SOC5
AdcaRegs.ADCSOC5CTL.bit.CHSEL = 6;// FSR5
AdcaRegs.ADCSOC5CTL.bit.ACQPS = acqps;
// SOC6
AdcaRegs.ADCSOC6CTL.bit.CHSEL = 7;// FSR6
AdcaRegs.ADCSOC6CTL.bit.ACQPS = acqps;
// SOC7
AdcaRegs.ADCSOC7CTL.bit.CHSEL = 8;// FSR7
AdcaRegs.ADCSOC7CTL.bit.ACQPS = acqps;
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0;//设置SOC的结束? 设置INT1标志
AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1;//启用标志
ADcaRegs.ADCINTFLGCLL.bit.ADCINT1 = 1;//清除标志
EDIS;