小弟初学DSP,所以选择这款初学入门,看了官网有关AD的例程基本都是PWM触发或者是ADC1触发,还有是强制转换,感觉很乱,以为有的场合在ADC采样的时候是不能影响到PWM的工作,我单次转换,专为ADC写了一个采样函数带参数的,如果调用这个函数则相对的AD进行采样工作,而且不产生中断,在ADC触发的时候PWM就受到了影响,请教一下社区
1:我是否可以修改中断向量表,把PWM设置为较高于ADC的中断优先级别:如果可以 如何修改向量表?
2:如果我不适用中断时AD如何适用?
以下是我采样函数,当AD不停采样时PWM波形收到严重影响,如果我延时一段时间采样发现是AD工作时造成的!
unsigned int ADC(unsigned char channel)
{ unsigned char i;
unsigned int jieguo=0;
switch(channel)
{
case 0: AdcRegs.ADCSOC0CTL.bit.CHSEL=0x00; break; //set SOC1 channel select to ADCINA2
case 1: AdcRegs.ADCSOC1CTL.bit.CHSEL=0x01; break;
case 2: AdcRegs.ADCSOC2CTL.bit.CHSEL=0x02; break;
case 3: AdcRegs.ADCSOC3CTL.bit.CHSEL=0x03; break;
default:break;
}
AdcRegs.ADCSOCFRC1.all= 0X0F;//软件强制转换SOC0及SOC1;
for(i=0;i<100;i++); // 延时一段时间,
while( AdcRegs.ADCCTL1.bit.ADCBSY==0){}