Skip to content

Commit 2ae7489

Browse files
committed
STM32F4 - Clear VBATE and TSVREFE bits before configuring ADC channels
1 parent aeabcc9 commit 2ae7489

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

targets/TARGET_STM/TARGET_STM32F4/analogin_api.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,13 +183,14 @@ static inline uint16_t adc_read(analogin_t *obj)
183183
return 0;
184184
}
185185

186+
ADC->CCR &= ~(ADC_CCR_VBATE | ADC_CCR_TSVREFE); // Workaround
186187
HAL_ADC_ConfigChannel(&AdcHandle, &sConfig);
187188

188189
HAL_ADC_Start(&AdcHandle); // Start conversion
189190

190191
// Wait end of conversion and get value
191192
if (HAL_ADC_PollForConversion(&AdcHandle, 10) == HAL_OK) {
192-
return (HAL_ADC_GetValue(&AdcHandle));
193+
return (uint16_t)HAL_ADC_GetValue(&AdcHandle);
193194
} else {
194195
return 0;
195196
}

0 commit comments

Comments
 (0)