Thread 中讨论的其他器件:SysConfig、 C2000WARE
您好!
我有以下简单的代码、对我来说并不简单。 请帮我理解并改进一下。
1.对于 acqps 设置,我是否可以使用一个 if 语句来包含所有 ADCA 到 ADCD (我实际上具有从 ADCA 到 ADCD 的设置)?
2.对于一个 ADCA 或其他 ADCX、 以下一个中断设置是否足够? 或者我是否需要添加这三个? 是否在 ADCA SOC0设置后标记设置?
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 1; //EAP_X 将设置 INT1标志
AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1; //启用 INT1标志
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //确保 INT1标志被清除
3.我是否需要设置此项(这是默认设置)? AdcaRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 15; // SOC0为高优先级。
4、触发源是 ePWM1、如果 ePWM3未设置或处于关闭状态、该怎么办? ADC 值看起来是什么、为零还是不允许? 在我的设置中、有些由 ePWM1触发、有些由 ePWM7触发。 当 ePWM1导通时、ePWM7关断、反之亦然、我可以一起进行设置还是必须单独设置?
ADCa_soc0、ADCB_soc0、ADCC_soc0和 ADCd_soc0同时被处理、那么所有 ADCx_SOC1、--15? 如果是、我能否通过选择最大的 soc 作为触发源来为所有中断设置一个中断?
6. SEL1N2或 SEL3N4中的任何一个都可以选择吗?
感谢您的帮助、
红梅
------------------------------------------------------------------
if (adc_resolution_12bit = AdcaRegs.ADCCTL2.bit.resolution){
acqps = 14;
}
否则{
acqps = 63;
}
EALLOW;
{
AdcaRegs.ADCSOC0CTL.bit.CHSEL = 0;
AdcaRegs.ADCSOC0CTL.bit.ACQPS = acqps
AdcaRegs.ADCSOC0CTL.bit.TRIGSEL = 5;
AdcaRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 15; // SOC0为高优先级
}
? AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0; //EAP_X 将设置 INT1标志
? AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1; //启用 INT1标志
? AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //确保 INT1标志被清除
{
AdcaRegs.ADCSOC1CTL.bit.CHSEL = 1;
AdcaRegs.ADCSOC1CTL.bit.ACQPS = acqps;
AdcaRegs.ADCSOC1CTL.bit.TRIGSEL = 5;
}
AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 1; //EAP_X 将设置 INT1标志
AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1; //启用 INT1标志
AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //确保 INT1标志被清除
EDIS;
///---------------------------------------------------------
if (adc_resolution_12bit = AdcbRegs.ADCCTL2.bit.resolution){
acqps = 14;
}
否则{
acqps = 63;
}
EALLOW;
// if (1 <= ADC_B_SAMPLING_NUMBER_ISR1)
{
AdcbRegs.ADCSOC0CTL.bit.CHSEL = ADC_B_SAMPLING_CH1_ISR1;
AdcbRegs.ADCSOC0CTL.bit.ACQPS = acqps;
AdcbRegs.ADCSOC0CTL.bit.TRIGSEL = 5;
}
AdcbRegs.ADCINTSEL1N2.bit.INT1SEL = 1; // SOC0结束将设置 INT1标志
AdcbRegs.ADCINTSEL1N2.bit.INT1E = 1; //启用 INT1标志
AdcbRegs.ADCINTFLGCLR.bit.ADCINT1 = 1; //确保 INT1标志被清除
EDIS;
--------------------------------------------------------------------