git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/stable_20.3.x@13882 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
Giovanni Di Sirio 2020-10-10 10:17:03 +00:00
parent f9eb33fb33
commit 3fe515416b
2 changed files with 9 additions and 0 deletions

View File

@ -171,12 +171,16 @@ static void adc_lld_calibrate(ADCDriver *adcp) {
while ((adcp->adcm->CR & ADC_CR_ADCAL) != 0)
;
osalSysPolledDelayX(OSAL_US2RTC(STM32_HCLK, 20));
/* Single-ended calibration for master ADC.*/
adcp->adcm->CR = ADC_CR_ADVREGEN;
adcp->adcm->CR = ADC_CR_ADVREGEN | ADC_CR_ADCAL;
while ((adcp->adcm->CR & ADC_CR_ADCAL) != 0)
;
osalSysPolledDelayX(OSAL_US2RTC(STM32_HCLK, 20));
#if STM32_ADC_DUAL_MODE
osalDbgAssert(adcp->adcs->CR == ADC_CR_ADVREGEN, "invalid register state");
@ -186,11 +190,15 @@ static void adc_lld_calibrate(ADCDriver *adcp) {
while ((adcp->adcs->CR & ADC_CR_ADCAL) != 0)
;
osalSysPolledDelayX(OSAL_US2RTC(STM32_HCLK, 20));
/* Single-ended calibration for slave ADC.*/
adcp->adcs->CR = ADC_CR_ADVREGEN;
adcp->adcs->CR = ADC_CR_ADVREGEN | ADC_CR_ADCAL;
while ((adcp->adcs->CR & ADC_CR_ADCAL) != 0)
;
osalSysPolledDelayX(OSAL_US2RTC(STM32_HCLK, 20));
#endif
}

View File

@ -74,6 +74,7 @@
*****************************************************************************
*** 20.3.3 ***
- FIX: Fixed STM32 ADCv3 hangin on initialization (bug #1126).
- FIX: Fixed I2S-related problems in STM32F4xx registry (bug #1124).
- FIX: Fixed STM32 EXTIv1 driver unable to enable/disable fixed lines
(bug #1123).