NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
NVIC_InitStructure.NVIC_IRQChannel = ADC1_2_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
ADC_ITConfig(ADC1,ADC_IT_EOC,ENABLE);
}
void ADC1_2_IRQHandler(void)
{
int Status;
ADC_ConvertedValueLocal =(float) ADC_ConvertedValue/4096*3.3; // ¶áè¡×a»»μÄADÖμ
Status = ADC_GetITStatus(ADC1, ADC_IT_EOC);
if(Status ==SET)
{
printf("\r\n The current AD value = 0x%04X \r\n", ADC_ConvertedValue);
printf("\r\n The current AD value = %f V \r\n",ADC_ConvertedValueLocal);
Delay(0xffffee);
ADC_ClearITPendingBit(ADC1, ADC_IT_EOC);
}
}