我正在研究使用 TMS320F28388D 的 ADC。
AD 转换后写入结果寄存器的时间对于12位和16位返回相同的时间。
从触发到中断标志检查的时间
12位= 1.8us
16位= 1.8us
ADC 完成后、将根据写入结果寄存器的数据进行处理。
当结果寄存器被写入时、中断被设置为在计时发生。 (INTPULSEPOS = 1)
中断不会被处理、但只有中断标志被用来做出决定。
12位/16位设置的转换时间应该有变化、但是中断时序不会改变。
设置中是否缺少某项内容?
===================================================================================================================================
(设置)
EALLOW;
//写入配置
AdcaRegs.ADCCTL2.bit.prescale = 6;//将 ADCCLK 分频器设置为/ 4
ADC_setMode (ADCA_BASE、ADC_Resolution 12位、ADC_MODE_SINGLE_ENDLE);//!!!!!!!!!!!!! 或16位
EDIS;
uint16_t acqps_a;
如果(0 = AdcaRegs.ADCCTL2.bit.resolution){// 0 = 12位,1 = 16位
acqps_a = 19;//裕度(5)+ 14 =(-1)+ 15 = SYSCLK / 75ns (数据表)
}
否则{//分辨率为16位
acqps_a = 68;//裕度(5)+ 63 =(-1)+ 64 = SYSCLK / 320ns (数据表)
}
EALLOW;
// ADC-A
AdcaRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0x2;
AdcaRegs.ADCSOC0CTL.bit.CHSEL = 2;
AdcaRegs.ADCSOC0CTL.bit.ACQPS = acqps_A;
AdcaRegs.ADCSOC0CTL.bit.TRIGSEL = 0x5;
AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1;
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0;
AdcaRegs.ADCINTSEL1N2.bit.INT1CONT = 1;
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;
AdcaRegs.ADCSOC1CTL.bit.CHSEL = 3;
AdcaRegs.ADCSOC1CTL.bit.ACQPS = acqps_A;
AdcaRegs.ADCSOC1CTL.bit.TRIGSEL = 0x5;
AdcaRegs.ADCINTSEL1N2.bit.INT2E = 1;
AdcaRegs.ADCINTSEL1N2.bit.INT2SEL = 1;
AdcaRegs.ADCINTSEL1N2.bit.INT2CONT = 1;
AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1;
AdcaRegs.ADCSOC2CTL.bit.CHSEL = 4;
AdcaRegs.ADCSOC2CTL.bit.ACQPS = acqps_A;
AdcaRegs.ADCSOC2CTL.bit.TRIGSEL = 0x5;
AdcaRegs.ADCSOC3CTL.bit.CHSEL = 5;
AdcaRegs.ADCSOC3CTL.bit.ACQPS = acqps_A;
AdcaRegs.ADCSOC3CTL.bit.TRIGSEL = 0x5;
//将脉冲位置设置为晚期
AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 1;//中断脉冲生成时序。 转换结束时序。
//为 ADC 加电
AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1;
EDIS;
DEVICE_DELAY_US (1000);
================================================================================================================================================
(处理)
!! 触发器!!
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;
AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1;
计时器启动
while (1){if (AdcaRegs.ADCINTFlG.bit.ADCINT2 == 1) break;}
计时器结束
================================================================================================================================================