我正在使用 STM32CubeMX 为 adc 生成低级库。到目前为止,我使用的代码在轮询模式下使用 adc 可以正常工作。但是,我想改进我的程序并调用中断服务例程 (ISR)。
我不确定如何让程序进入 ISR。目前我试图在 stm32l4xx_it.c 文件中编写我的 ISR 代码,如下所示:
void ADC1_IRQHandler(void)
{
/* USER CODE BEGIN ADC1_IRQn 0 */
uint8_t i;
if(LL_ADC_IsActiveFlag_EOC(ADC1))
{
adc_value[i] = LL_ADC_REG_ReadConversionData12(ADC1);
i ++;
LL_ADC_ClearFlag_EOC(ADC1);
}
else if(LL_ADC_IsActiveFlag_EOS(ADC1))
{
i = 0;
LL_ADC_ClearFlag_EOS(ADC1);
}
/* USER CODE END ADC1_IRQn 0 */
/* USER CODE BEGIN ADC1_IRQn 1 */
/* USER CODE END ADC1_IRQn 1 */
}
但是,程序从不进入该例程。有没有人有这方面的经验?或者可能是使用 stm LL 库的示例代码?
提前致谢!