STM32F4xx_HAL_Driver  1.8.3
Configuration of ADC hierarchical scope: multimode
+ Collaboration diagram for Configuration of ADC hierarchical scope: multimode:

Functions

__STATIC_INLINE void LL_ADC_SetMultimode (ADC_Common_TypeDef *ADCxy_COMMON, uint32_t Multimode)
 Set ADC multimode configuration to operate in independent mode or multimode (for devices with several ADC instances). More...
 
__STATIC_INLINE uint32_t LL_ADC_GetMultimode (const ADC_Common_TypeDef *ADCxy_COMMON)
 Get ADC multimode configuration to operate in independent mode or multimode (for devices with several ADC instances). More...
 
__STATIC_INLINE void LL_ADC_SetMultiDMATransfer (ADC_Common_TypeDef *ADCxy_COMMON, uint32_t MultiDMATransfer)
 Set ADC multimode conversion data transfer: no transfer or transfer by DMA. More...
 
__STATIC_INLINE uint32_t LL_ADC_GetMultiDMATransfer (const ADC_Common_TypeDef *ADCxy_COMMON)
 Get ADC multimode conversion data transfer: no transfer or transfer by DMA. More...
 
__STATIC_INLINE void LL_ADC_SetMultiTwoSamplingDelay (ADC_Common_TypeDef *ADCxy_COMMON, uint32_t MultiTwoSamplingDelay)
 Set ADC multimode delay between 2 sampling phases. More...
 
__STATIC_INLINE uint32_t LL_ADC_GetMultiTwoSamplingDelay (const ADC_Common_TypeDef *ADCxy_COMMON)
 Get ADC multimode delay between 2 sampling phases. @rmtoll CCR DELAY LL_ADC_GetMultiTwoSamplingDelay. More...
 

Detailed Description

Function Documentation

◆ LL_ADC_GetMultiDMATransfer()

__STATIC_INLINE uint32_t LL_ADC_GetMultiDMATransfer ( const ADC_Common_TypeDef *  ADCxy_COMMON)

Get ADC multimode conversion data transfer: no transfer or transfer by DMA.

Note
If ADC multimode transfer by DMA is not selected: each ADC uses its own DMA channel, with its individual DMA transfer settings. If ADC multimode transfer by DMA is selected: One DMA channel is used for both ADC (DMA of ADC master) Specifies the DMA requests mode:
  • Limited mode (One shot mode): DMA transfer requests are stopped when number of DMA data transfers (number of ADC conversions) is reached. This ADC mode is intended to be used with DMA mode non-circular.
  • Unlimited mode: DMA transfer requests are unlimited, whatever number of DMA data transfers (number of ADC conversions). This ADC mode is intended to be used with DMA mode circular.
If ADC DMA requests mode is set to unlimited and DMA is set to mode non-circular: when DMA transfers size will be reached, DMA will stop transfers of ADC conversions data ADC will raise an overrun error (overrun flag and interruption if enabled).
How to retrieve multimode conversion data: Whatever multimode transfer by DMA setting: using function LL_ADC_REG_ReadMultiConversionData32(). If ADC multimode transfer by DMA is selected: conversion data is a raw data with ADC master and slave concatenated. A macro is available to get the conversion data of ADC master or ADC slave: see helper macro __LL_ADC_MULTI_CONV_DATA_MASTER_SLAVE(). @rmtoll CCR MDMA LL_ADC_GetMultiDMATransfer
CCR DDS LL_ADC_GetMultiDMATransfer
Parameters
ADCxy_COMMONADC common instance (can be set directly from CMSIS definition or by using helper macro __LL_ADC_COMMON_INSTANCE() )
Return values
Returnedvalue can be one of the following values:
  • LL_ADC_MULTI_REG_DMA_EACH_ADC
  • LL_ADC_MULTI_REG_DMA_LIMIT_1
  • LL_ADC_MULTI_REG_DMA_LIMIT_2
  • LL_ADC_MULTI_REG_DMA_LIMIT_3
  • LL_ADC_MULTI_REG_DMA_UNLMT_1
  • LL_ADC_MULTI_REG_DMA_UNLMT_2
  • LL_ADC_MULTI_REG_DMA_UNLMT_3

Definition at line 3785 of file stm32f4xx_ll_adc.h.

◆ LL_ADC_GetMultimode()

__STATIC_INLINE uint32_t LL_ADC_GetMultimode ( const ADC_Common_TypeDef *  ADCxy_COMMON)

Get ADC multimode configuration to operate in independent mode or multimode (for devices with several ADC instances).

Note
If multimode configuration: the selected ADC instance is either master or slave depending on hardware. Refer to reference manual. @rmtoll CCR MULTI LL_ADC_GetMultimode
Parameters
ADCxy_COMMONADC common instance (can be set directly from CMSIS definition or by using helper macro __LL_ADC_COMMON_INSTANCE() )
Return values
Returnedvalue can be one of the following values:
  • LL_ADC_MULTI_INDEPENDENT
  • LL_ADC_MULTI_DUAL_REG_SIMULT
  • LL_ADC_MULTI_DUAL_REG_INTERL
  • LL_ADC_MULTI_DUAL_INJ_SIMULT
  • LL_ADC_MULTI_DUAL_INJ_ALTERN
  • LL_ADC_MULTI_DUAL_REG_SIM_INJ_SIM
  • LL_ADC_MULTI_DUAL_REG_SIM_INJ_ALT
  • LL_ADC_MULTI_DUAL_REG_INT_INJ_SIM
  • LL_ADC_MULTI_TRIPLE_REG_SIM_INJ_SIM
  • LL_ADC_MULTI_TRIPLE_REG_SIM_INJ_ALT
  • LL_ADC_MULTI_TRIPLE_INJ_SIMULT
  • LL_ADC_MULTI_TRIPLE_REG_SIMULT
  • LL_ADC_MULTI_TRIPLE_REG_INTERL
  • LL_ADC_MULTI_TRIPLE_INJ_ALTERN

Definition at line 3688 of file stm32f4xx_ll_adc.h.

◆ LL_ADC_GetMultiTwoSamplingDelay()

__STATIC_INLINE uint32_t LL_ADC_GetMultiTwoSamplingDelay ( const ADC_Common_TypeDef *  ADCxy_COMMON)

Get ADC multimode delay between 2 sampling phases. @rmtoll CCR DELAY LL_ADC_GetMultiTwoSamplingDelay.

Parameters
ADCxy_COMMONADC common instance (can be set directly from CMSIS definition or by using helper macro __LL_ADC_COMMON_INSTANCE() )
Return values
Returnedvalue can be one of the following values:
  • LL_ADC_MULTI_TWOSMP_DELAY_5CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_6CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_7CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_8CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_9CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_10CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_11CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_12CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_13CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_14CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_15CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_16CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_17CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_18CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_19CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_20CYCLES

Definition at line 3847 of file stm32f4xx_ll_adc.h.

◆ LL_ADC_SetMultiDMATransfer()

__STATIC_INLINE void LL_ADC_SetMultiDMATransfer ( ADC_Common_TypeDef *  ADCxy_COMMON,
uint32_t  MultiDMATransfer 
)

Set ADC multimode conversion data transfer: no transfer or transfer by DMA.

Note
If ADC multimode transfer by DMA is not selected: each ADC uses its own DMA channel, with its individual DMA transfer settings. If ADC multimode transfer by DMA is selected: One DMA channel is used for both ADC (DMA of ADC master) Specifies the DMA requests mode:
  • Limited mode (One shot mode): DMA transfer requests are stopped when number of DMA data transfers (number of ADC conversions) is reached. This ADC mode is intended to be used with DMA mode non-circular.
  • Unlimited mode: DMA transfer requests are unlimited, whatever number of DMA data transfers (number of ADC conversions). This ADC mode is intended to be used with DMA mode circular.
If ADC DMA requests mode is set to unlimited and DMA is set to mode non-circular: when DMA transfers size will be reached, DMA will stop transfers of ADC conversions data ADC will raise an overrun error (overrun flag and interruption if enabled).
How to retrieve multimode conversion data: Whatever multimode transfer by DMA setting: using function LL_ADC_REG_ReadMultiConversionData32(). If ADC multimode transfer by DMA is selected: conversion data is a raw data with ADC master and slave concatenated. A macro is available to get the conversion data of ADC master or ADC slave: see helper macro __LL_ADC_MULTI_CONV_DATA_MASTER_SLAVE(). @rmtoll CCR MDMA LL_ADC_SetMultiDMATransfer
CCR DDS LL_ADC_SetMultiDMATransfer
Parameters
ADCxy_COMMONADC common instance (can be set directly from CMSIS definition or by using helper macro __LL_ADC_COMMON_INSTANCE() )
MultiDMATransferThis parameter can be one of the following values:
  • LL_ADC_MULTI_REG_DMA_EACH_ADC
  • LL_ADC_MULTI_REG_DMA_LIMIT_1
  • LL_ADC_MULTI_REG_DMA_LIMIT_2
  • LL_ADC_MULTI_REG_DMA_LIMIT_3
  • LL_ADC_MULTI_REG_DMA_UNLMT_1
  • LL_ADC_MULTI_REG_DMA_UNLMT_2
  • LL_ADC_MULTI_REG_DMA_UNLMT_3
Return values
None

Definition at line 3737 of file stm32f4xx_ll_adc.h.

◆ LL_ADC_SetMultimode()

__STATIC_INLINE void LL_ADC_SetMultimode ( ADC_Common_TypeDef *  ADCxy_COMMON,
uint32_t  Multimode 
)

Set ADC multimode configuration to operate in independent mode or multimode (for devices with several ADC instances).

Note
If multimode configuration: the selected ADC instance is either master or slave depending on hardware. Refer to reference manual. @rmtoll CCR MULTI LL_ADC_SetMultimode
Parameters
ADCxy_COMMONADC common instance (can be set directly from CMSIS definition or by using helper macro __LL_ADC_COMMON_INSTANCE() )
MultimodeThis parameter can be one of the following values:
  • LL_ADC_MULTI_INDEPENDENT
  • LL_ADC_MULTI_DUAL_REG_SIMULT
  • LL_ADC_MULTI_DUAL_REG_INTERL
  • LL_ADC_MULTI_DUAL_INJ_SIMULT
  • LL_ADC_MULTI_DUAL_INJ_ALTERN
  • LL_ADC_MULTI_DUAL_REG_SIM_INJ_SIM
  • LL_ADC_MULTI_DUAL_REG_SIM_INJ_ALT
  • LL_ADC_MULTI_DUAL_REG_INT_INJ_SIM
  • LL_ADC_MULTI_TRIPLE_REG_SIM_INJ_SIM
  • LL_ADC_MULTI_TRIPLE_REG_SIM_INJ_ALT
  • LL_ADC_MULTI_TRIPLE_INJ_SIMULT
  • LL_ADC_MULTI_TRIPLE_REG_SIMULT
  • LL_ADC_MULTI_TRIPLE_REG_INTERL
  • LL_ADC_MULTI_TRIPLE_INJ_ALTERN
Return values
None

Definition at line 3658 of file stm32f4xx_ll_adc.h.

◆ LL_ADC_SetMultiTwoSamplingDelay()

__STATIC_INLINE void LL_ADC_SetMultiTwoSamplingDelay ( ADC_Common_TypeDef *  ADCxy_COMMON,
uint32_t  MultiTwoSamplingDelay 
)

Set ADC multimode delay between 2 sampling phases.

Note
The sampling delay range depends on ADC resolution:
  • ADC resolution 12 bits can have maximum delay of 12 cycles.
  • ADC resolution 10 bits can have maximum delay of 10 cycles.
  • ADC resolution 8 bits can have maximum delay of 8 cycles.
  • ADC resolution 6 bits can have maximum delay of 6 cycles. @rmtoll CCR DELAY LL_ADC_SetMultiTwoSamplingDelay
Parameters
ADCxy_COMMONADC common instance (can be set directly from CMSIS definition or by using helper macro __LL_ADC_COMMON_INSTANCE() )
MultiTwoSamplingDelayThis parameter can be one of the following values:
  • LL_ADC_MULTI_TWOSMP_DELAY_5CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_6CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_7CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_8CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_9CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_10CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_11CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_12CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_13CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_14CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_15CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_16CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_17CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_18CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_19CYCLES
  • LL_ADC_MULTI_TWOSMP_DELAY_20CYCLES
Return values
None

Definition at line 3819 of file stm32f4xx_ll_adc.h.