Я использую STM32CubeMX для создания низкоуровневой библиотеки для объявления c. Код, который я использую до сих пор, работает нормально, используя объявление c в режиме опроса. Однако я хотел бы улучшить свою программу и вызвать процедуру обработки прерывания (ISR).
Я не совсем уверен, как сделать программу go для ISR. В настоящее время я пытался записать свой код ISR в файл stm32l4xx_it. c следующим образом:
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?
Заранее спасибо!