Is there a HAL_ADC_Stop_DMA() alternative to be able to start second transfer using HAL_ADC_Start_DMA() for single conversion?
Using a STM32F413 and ADC HAL drivers.
After a successfully completed single conversion initiated by HAL_ADC_Start_DMA() one apparently needs to call HAL_ADC_Stop_DMA() in order for next HAL_ADC_Start_DMA() to actually start a new transfer. There are no error condition in this use-case as .DMAContinuousRequests is disabled (DDS=0).
I would like to not have to call Stop_DMA as I may have an ongoing Injected conversion which then would be canceled as well. Based on RM0430 i think the real issue is that in this case the ADC_CR2_DMA bit must be cleared before set again in order for new regular channel conversions will be accepted (13.8.1).
There is however no HAL API function to handle this so I'm confused. But would this be a correct and working solution to this issue? If so perhaps LL function LL_ADC_REG_SetDMATransfer(LL_ADC_REG_DMA_TRANSFER_NONE) can be used?