diff --git a/os/hal/include/hal_adc.h b/os/hal/include/hal_adc.h index 7b93851c5..527821245 100644 --- a/os/hal/include/hal_adc.h +++ b/os/hal/include/hal_adc.h @@ -230,8 +230,12 @@ typedef enum { (adcp)->grpp->error_cb(adcp, err); \ if ((adcp)->state == ADC_ERROR) \ (adcp)->state = ADC_READY; \ + (adcp)->grpp = NULL; \ + } \ + else { \ + (adcp)->state = ADC_READY; \ + (adcp)->grpp = NULL; \ } \ - (adcp)->grpp = NULL; \ _adc_timeout_isr(adcp); \ } /** @} */ diff --git a/readme.txt b/readme.txt index 276e1ca1b..f3df0aa41 100644 --- a/readme.txt +++ b/readme.txt @@ -114,6 +114,8 @@ - RT: Merged RT4. - NIL: Merged NIL2. - NIL: Added STM32F7 demo. +- HAL: Fixed wrong conditional branches in _adc_isr_error_code (bug #751) + (backported to 2.6.10, 3.0.6 and 16.1.5). - HAL: Fixed bug in STM32/ADCv3 (bug #750). - HAL: Fixed OPT settings and added board folder in STM32F4xx-USB_CDC demo (bug #749)(backported to 3.0.6 and 16.1.5).