diff --git a/src/main/drivers/adc_stm32f30x.c b/src/main/drivers/adc_stm32f30x.c index b6b77595e..68f1177b5 100644 --- a/src/main/drivers/adc_stm32f30x.c +++ b/src/main/drivers/adc_stm32f30x.c @@ -91,14 +91,16 @@ void adcInit(drv_adc_config_t *init) #endif #ifdef EXTERNAL1_ADC_GPIO - GPIO_InitStructure.GPIO_Pin = EXTERNAL1_ADC_GPIO_PIN; - GPIO_Init(EXTERNAL1_ADC_GPIO, &GPIO_InitStructure); + if (init->enableExternal1) { + GPIO_InitStructure.GPIO_Pin = EXTERNAL1_ADC_GPIO_PIN; + GPIO_Init(EXTERNAL1_ADC_GPIO, &GPIO_InitStructure); - adcConfig[ADC_EXTERNAL1].adcChannel = EXTERNAL1_ADC_CHANNEL; - adcConfig[ADC_EXTERNAL1].dmaIndex = adcChannelCount; - adcConfig[ADC_EXTERNAL1].sampleTime = ADC_SampleTime_601Cycles5; - adcConfig[ADC_EXTERNAL1].enabled = true; - adcChannelCount++; + adcConfig[ADC_EXTERNAL1].adcChannel = EXTERNAL1_ADC_CHANNEL; + adcConfig[ADC_EXTERNAL1].dmaIndex = adcChannelCount; + adcConfig[ADC_EXTERNAL1].sampleTime = ADC_SampleTime_601Cycles5; + adcConfig[ADC_EXTERNAL1].enabled = true; + adcChannelCount++; + } #endif RCC_ADCCLKConfig(RCC_ADC12PLLCLK_Div256); // 72 MHz divided by 256 = 281.25 kHz