请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS320F280025C 您好!
在这里、我的代码正常运行、但"_interrupt"会如何 取消中断、因为 当我不这么声明中断时、我的中断不起作用。 当 在 每个循环转动时缺少_interrupt 时、"ADC_INDEX = 0"、因此我的缓冲区未完成。
__interrupt void isr_adc(void)
{
// Record ADC value
Vout_samples[Adc_index] = ADC_readResult(VOUT_ADCRESULTREGBASE, VOUT_ADC_SOC_NO);
Adc_index++;
if(Adc_index >= SAMPLES)
{
Adc_index = 0;
adc_bufferfull = 1;
}
ADC_clearInterruptStatus(ADCC_BASE, VOUT_ADC_INT_NUMBER); // Clear the interrupt flag
if(ADC_getInterruptOverflowStatus(ADCC_BASE, VOUT_ADC_INT_NUMBER) == true) // Check if overflow has occurred
{
ADC_clearInterruptOverflowStatus(ADCC_BASE, VOUT_ADC_INT_NUMBER);
ADC_clearInterruptStatus(ADCC_BASE, VOUT_ADC_INT_NUMBER);
}
Interrupt_clearACKGroup(INTERRUPT_ACK_GROUP1); // Acknowledge the interrupt
}
对于我来说、中断映射由"Interrupt_register (INT_ADCC1、&ISR_ADC);"进行。 还有其他的吗?
谢谢、
Damien