|
|
@@ -55,125 +55,190 @@ typedef struct
|
|
|
/**
|
|
|
* @brief Structure definition of ADC group injected and ADC channel affected to ADC group injected
|
|
|
* @note Parameters of this structure are shared within 2 scopes:
|
|
|
- * - Scope channel: InjectedChannel, InjectedRank, InjectedSamplingTime , InjectedSingleDiff, InjectedOffsetNumber, InjectedOffset
|
|
|
- * - Scope ADC group injected (affects all channels of injected group): InjectedNbrOfConversion, InjectedDiscontinuousConvMode,
|
|
|
- * AutoInjectedConv, QueueInjectedContext, ExternalTrigInjecConv, ExternalTrigInjecConvEdge, InjecOversamplingMode, InjecOversampling.
|
|
|
+ * - Scope channel: InjectedChannel, InjectedRank, InjectedSamplingTime , InjectedSingleDiff,
|
|
|
+ * InjectedOffsetNumber, InjectedOffset
|
|
|
+ * - Scope ADC group injected (affects all channels of injected group): InjectedNbrOfConversion,
|
|
|
+ * InjectedDiscontinuousConvMode,
|
|
|
+ * AutoInjectedConv, QueueInjectedContext, ExternalTrigInjecConv, ExternalTrigInjecConvEdge,
|
|
|
+ * InjecOversamplingMode, InjecOversampling.
|
|
|
* @note The setting of these parameters by function HAL_ADCEx_InjectedConfigChannel() is conditioned to ADC state.
|
|
|
* ADC state can be either:
|
|
|
- * - For all parameters: ADC disabled (this is the only possible ADC state to modify parameter 'InjectedSingleDiff')
|
|
|
- * - For parameters 'InjectedDiscontinuousConvMode', 'QueueInjectedContext', 'InjecOversampling': ADC enabled without conversion on going on injected group.
|
|
|
- * - For parameters 'InjectedSamplingTime', 'InjectedOffset', 'InjectedOffsetNumber', 'AutoInjectedConv': ADC enabled without conversion on going on regular and injected groups.
|
|
|
- * - For parameters 'InjectedChannel', 'InjectedRank', 'InjectedNbrOfConversion', 'ExternalTrigInjecConv', 'ExternalTrigInjecConvEdge': ADC enabled and while conversion on going
|
|
|
+ * - For all parameters: ADC disabled (this is the only possible ADC state to modify parameter
|
|
|
+ * 'InjectedSingleDiff')
|
|
|
+ * - For parameters 'InjectedDiscontinuousConvMode', 'QueueInjectedContext', 'InjecOversampling': ADC enabled
|
|
|
+ * without conversion on going on injected group.
|
|
|
+ * - For parameters 'InjectedSamplingTime', 'InjectedOffset', 'InjectedOffsetNumber', 'AutoInjectedConv':
|
|
|
+ * ADC enabled without conversion on going on regular and injected groups.
|
|
|
+ * - For parameters 'InjectedChannel', 'InjectedRank', 'InjectedNbrOfConversion', 'ExternalTrigInjecConv',
|
|
|
+ * 'ExternalTrigInjecConvEdge': ADC enabled and while conversion on going
|
|
|
* on ADC groups regular and injected.
|
|
|
* If ADC is not in the appropriate state to modify some parameters, these parameters setting is bypassed
|
|
|
- * without error reporting (as it can be the expected behavior in case of intended action to update another parameter (which fulfills the ADC state condition) on the fly).
|
|
|
+ * without error reporting (as it can be the expected behavior in case of intended action to update another
|
|
|
+ * parameter (which fulfills the ADC state condition) on the fly).
|
|
|
*/
|
|
|
typedef struct
|
|
|
{
|
|
|
uint32_t InjectedChannel; /*!< Specifies the channel to configure into ADC group injected.
|
|
|
This parameter can be a value of @ref ADC_HAL_EC_CHANNEL
|
|
|
- Note: Depending on devices and ADC instances, some channels may not be available on device package pins. Refer to device datasheet for channels availability. */
|
|
|
+ Note: Depending on devices and ADC instances, some channels may not be
|
|
|
+ available on device package pins. Refer to device datasheet for
|
|
|
+ channels availability. */
|
|
|
|
|
|
uint32_t InjectedRank; /*!< Specifies the rank in the ADC group injected sequencer.
|
|
|
This parameter must be a value of @ref ADC_INJ_SEQ_RANKS.
|
|
|
- Note: to disable a channel or change order of conversion sequencer, rank containing a previous channel setting can be overwritten by
|
|
|
- the new channel setting (or parameter number of conversions adjusted) */
|
|
|
+ Note: to disable a channel or change order of conversion sequencer,
|
|
|
+ rank containing a previous channel setting can be overwritten by
|
|
|
+ the new channel setting (or parameter number of conversions
|
|
|
+ adjusted) */
|
|
|
|
|
|
uint32_t InjectedSamplingTime; /*!< Sampling time value to be set for the selected channel.
|
|
|
Unit: ADC clock cycles.
|
|
|
Conversion time is the addition of sampling time and processing time
|
|
|
- (12.5 ADC clock cycles at ADC resolution 12 bits, 10.5 cycles at 10 bits, 8.5 cycles at 8 bits, 6.5 cycles at 6 bits).
|
|
|
+ (12.5 ADC clock cycles at ADC resolution 12 bits, 10.5 cycles at 10 bits,
|
|
|
+ 8.5 cycles at 8 bits, 6.5 cycles at 6 bits).
|
|
|
This parameter can be a value of @ref ADC_HAL_EC_CHANNEL_SAMPLINGTIME.
|
|
|
- Caution: This parameter applies to a channel that can be used in a regular and/or injected group.
|
|
|
- It overwrites the last setting.
|
|
|
- Note: In case of usage of internal measurement channels (VrefInt/Vbat/TempSensor),
|
|
|
- sampling time constraints must be respected (sampling time can be adjusted in function of ADC clock frequency and sampling time setting)
|
|
|
- Refer to device datasheet for timings values. */
|
|
|
+ Caution: This parameter applies to a channel that can be used in a
|
|
|
+ regular and/or injected group. It overwrites the last setting.
|
|
|
+ Note: In case of usage of internal measurement channels (VrefInt, ...),
|
|
|
+ sampling time constraints must be respected (sampling time can be
|
|
|
+ adjusted in function of ADC clock frequency and sampling time
|
|
|
+ setting). Refer to device datasheet for timings values. */
|
|
|
|
|
|
uint32_t InjectedSingleDiff; /*!< Selection of single-ended or differential input.
|
|
|
- In differential mode: Differential measurement is between the selected channel 'i' (positive input) and channel 'i+1' (negative input).
|
|
|
- Only channel 'i' has to be configured, channel 'i+1' is configured automatically.
|
|
|
- This parameter must be a value of @ref ADC_HAL_EC_CHANNEL_SINGLE_DIFF_ENDING.
|
|
|
- Caution: This parameter applies to a channel that can be used in a regular and/or injected group.
|
|
|
- It overwrites the last setting.
|
|
|
- Note: Refer to Reference Manual to ensure the selected channel is available in differential mode.
|
|
|
- Note: When configuring a channel 'i' in differential mode, the channel 'i+1' is not usable separately.
|
|
|
- Note: This parameter must be modified when ADC is disabled (before ADC start conversion or after ADC stop conversion).
|
|
|
- If ADC is enabled, this parameter setting is bypassed without error reporting (as it can be the expected behavior in case
|
|
|
- of another parameter update on the fly) */
|
|
|
+ In differential mode: Differential measurement is between the selected
|
|
|
+ channel 'i' (positive input) and channel 'i+1' (negative input).
|
|
|
+ Only channel 'i' has to be configured, channel 'i+1' is configured
|
|
|
+ automatically.
|
|
|
+ This parameter must be a value of
|
|
|
+ @ref ADC_HAL_EC_CHANNEL_SINGLE_DIFF_ENDING.
|
|
|
+ Caution: This parameter applies to a channel that can be used in a
|
|
|
+ regular and/or injected group. It overwrites the last setting.
|
|
|
+ Note: Refer to Reference Manual to ensure the selected channel is
|
|
|
+ available in differential mode.
|
|
|
+ Note: When configuring a channel 'i' in differential mode, the channel
|
|
|
+ 'i+1' is not usable separately.
|
|
|
+ Note: This parameter must be modified when ADC is disabled (before ADC
|
|
|
+ start conversion or after ADC stop conversion).
|
|
|
+ If ADC is enabled, this parameter setting is bypassed without error
|
|
|
+ reporting (as it can be the expected behavior in case of another
|
|
|
+ parameter update on the fly) */
|
|
|
|
|
|
uint32_t InjectedOffsetNumber; /*!< Selects the offset number.
|
|
|
This parameter can be a value of @ref ADC_HAL_EC_OFFSET_NB.
|
|
|
- Caution: Only one offset is allowed per channel. This parameter overwrites the last setting. */
|
|
|
+ Caution: Only one offset is allowed per channel. This parameter
|
|
|
+ overwrites the last setting. */
|
|
|
|
|
|
uint32_t InjectedOffset; /*!< Defines the offset to be subtracted from the raw converted data.
|
|
|
Offset value must be a positive number.
|
|
|
- Depending of ADC resolution selected (12, 10, 8 or 6 bits), this parameter must be a number
|
|
|
- between Min_Data = 0x000 and Max_Data = 0xFFF, 0x3FF, 0xFF or 0x3F respectively.
|
|
|
- Note: This parameter must be modified when no conversion is on going on both regular and injected groups (ADC disabled, or ADC enabled
|
|
|
- without continuous mode or external trigger that could launch a conversion). */
|
|
|
-
|
|
|
- uint32_t InjectedNbrOfConversion; /*!< Specifies the number of ranks that will be converted within the ADC group injected sequencer.
|
|
|
- To use the injected group sequencer and convert several ranks, parameter 'ScanConvMode' must be enabled.
|
|
|
+ Depending of ADC resolution selected (12, 10, 8 or 6 bits), this
|
|
|
+ parameter must be a number between Min_Data = 0x000 and Max_Data = 0xFFF,
|
|
|
+ 0x3FF, 0xFF or 0x3F respectively.
|
|
|
+ Note: This parameter must be modified when no conversion is on going
|
|
|
+ on both regular and injected groups (ADC disabled, or ADC enabled
|
|
|
+ without continuous mode or external trigger that could launch a
|
|
|
+ conversion). */
|
|
|
+
|
|
|
+ uint32_t InjectedNbrOfConversion; /*!< Specifies the number of ranks that will be converted within the ADC group
|
|
|
+ injected sequencer.
|
|
|
+ To use the injected group sequencer and convert several ranks, parameter
|
|
|
+ 'ScanConvMode' must be enabled.
|
|
|
This parameter must be a number between Min_Data = 1 and Max_Data = 4.
|
|
|
- Caution: this setting impacts the entire injected group. Therefore, call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
- configure a channel on injected group can impact the configuration of other channels previously set. */
|
|
|
+ Caution: this setting impacts the entire injected group. Therefore,
|
|
|
+ call of HAL_ADCEx_InjectedConfigChannel() to configure a channel on
|
|
|
+ injected group can impact the configuration of other channels previously
|
|
|
+ set. */
|
|
|
|
|
|
- FunctionalState InjectedDiscontinuousConvMode; /*!< Specifies whether the conversions sequence of ADC group injected is performed in Complete-sequence/Discontinuous-sequence
|
|
|
+ FunctionalState InjectedDiscontinuousConvMode; /*!< Specifies whether the conversions sequence of ADC group injected
|
|
|
+ is performed in Complete-sequence/Discontinuous-sequence
|
|
|
(main sequence subdivided in successive parts).
|
|
|
- Discontinuous mode is used only if sequencer is enabled (parameter 'ScanConvMode'). If sequencer is disabled, this parameter is discarded.
|
|
|
+ Discontinuous mode is used only if sequencer is enabled (parameter
|
|
|
+ 'ScanConvMode'). If sequencer is disabled, this parameter is discarded.
|
|
|
Discontinuous mode can be enabled only if continuous mode is disabled.
|
|
|
This parameter can be set to ENABLE or DISABLE.
|
|
|
- Note: This parameter must be modified when ADC is disabled (before ADC start conversion or after ADC stop conversion).
|
|
|
- Note: For injected group, discontinuous mode converts the sequence channel by channel (discontinuous length fixed to 1 rank).
|
|
|
- Caution: this setting impacts the entire injected group. Therefore, call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
- configure a channel on injected group can impact the configuration of other channels previously set. */
|
|
|
-
|
|
|
- FunctionalState AutoInjectedConv; /*!< Enables or disables the selected ADC group injected automatic conversion after regular one
|
|
|
+ Note: This parameter must be modified when ADC is disabled (before ADC
|
|
|
+ start conversion or after ADC stop conversion).
|
|
|
+ Note: For injected group, discontinuous mode converts the sequence
|
|
|
+ channel by channel (discontinuous length fixed to 1 rank).
|
|
|
+ Caution: this setting impacts the entire injected group. Therefore,
|
|
|
+ call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
+ configure a channel on injected group can impact the
|
|
|
+ configuration of other channels previously set. */
|
|
|
+
|
|
|
+ FunctionalState AutoInjectedConv; /*!< Enables or disables the selected ADC group injected automatic conversion
|
|
|
+ after regular one
|
|
|
This parameter can be set to ENABLE or DISABLE.
|
|
|
- Note: To use Automatic injected conversion, discontinuous mode must be disabled ('DiscontinuousConvMode' and 'InjectedDiscontinuousConvMode' set to DISABLE)
|
|
|
- Note: To use Automatic injected conversion, injected group external triggers must be disabled ('ExternalTrigInjecConv' set to ADC_INJECTED_SOFTWARE_START)
|
|
|
- Note: In case of DMA used with regular group: if DMA configured in normal mode (single shot) JAUTO will be stopped upon DMA transfer complete.
|
|
|
- To maintain JAUTO always enabled, DMA must be configured in circular mode.
|
|
|
- Caution: this setting impacts the entire injected group. Therefore, call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
- configure a channel on injected group can impact the configuration of other channels previously set. */
|
|
|
+ Note: To use Automatic injected conversion, discontinuous mode must
|
|
|
+ be disabled ('DiscontinuousConvMode' and
|
|
|
+ 'InjectedDiscontinuousConvMode' set to DISABLE)
|
|
|
+ Note: To use Automatic injected conversion, injected group external
|
|
|
+ triggers must be disabled ('ExternalTrigInjecConv' set to
|
|
|
+ ADC_INJECTED_SOFTWARE_START)
|
|
|
+ Note: In case of DMA used with regular group: if DMA configured in
|
|
|
+ normal mode (single shot) JAUTO will be stopped upon DMA transfer
|
|
|
+ complete.
|
|
|
+ To maintain JAUTO always enabled, DMA must be configured in
|
|
|
+ circular mode.
|
|
|
+ Caution: this setting impacts the entire injected group. Therefore,
|
|
|
+ call of HAL_ADCEx_InjectedConfigChannel() to configure a channel
|
|
|
+ on injected group can impact the configuration of other channels
|
|
|
+ previously set. */
|
|
|
|
|
|
FunctionalState QueueInjectedContext; /*!< Specifies whether the context queue feature is enabled.
|
|
|
This parameter can be set to ENABLE or DISABLE.
|
|
|
- If context queue is enabled, injected sequencer&channels configurations are queued on up to 2 contexts. If a
|
|
|
- new injected context is set when queue is full, error is triggered by interruption and through function
|
|
|
+ If context queue is enabled, injected sequencer&channels configurations
|
|
|
+ are queued on up to 2 contexts. If a
|
|
|
+ new injected context is set when queue is full, error is triggered by
|
|
|
+ interruption and through function
|
|
|
'HAL_ADCEx_InjectedQueueOverflowCallback'.
|
|
|
- Caution: This feature request that the sequence is fully configured before injected conversion start.
|
|
|
- Therefore, configure channels with as many calls to HAL_ADCEx_InjectedConfigChannel() as the 'InjectedNbrOfConversion' parameter.
|
|
|
- Caution: this setting impacts the entire injected group. Therefore, call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
- configure a channel on injected group can impact the configuration of other channels previously set.
|
|
|
- Note: This parameter must be modified when ADC is disabled (before ADC start conversion or after ADC stop conversion). */
|
|
|
-
|
|
|
- uint32_t ExternalTrigInjecConv; /*!< Selects the external event used to trigger the conversion start of injected group.
|
|
|
- If set to ADC_INJECTED_SOFTWARE_START, external triggers are disabled and software trigger is used instead.
|
|
|
- This parameter can be a value of @ref ADC_injected_external_trigger_source.
|
|
|
- Caution: this setting impacts the entire injected group. Therefore, call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
- configure a channel on injected group can impact the configuration of other channels previously set. */
|
|
|
+ Caution: This feature request that the sequence is fully configured
|
|
|
+ before injected conversion start.
|
|
|
+ Therefore, configure channels with as many calls to
|
|
|
+ HAL_ADCEx_InjectedConfigChannel() as the
|
|
|
+ 'InjectedNbrOfConversion' parameter.
|
|
|
+ Caution: this setting impacts the entire injected group. Therefore,
|
|
|
+ call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
+ configure a channel on injected group can impact the
|
|
|
+ configuration of other channels previously set.
|
|
|
+ Note: This parameter must be modified when ADC is disabled (before ADC
|
|
|
+ start conversion or after ADC stop conversion). */
|
|
|
+
|
|
|
+ uint32_t ExternalTrigInjecConv; /*!< Selects the external event used to trigger the conversion start of
|
|
|
+ injected group.
|
|
|
+ If set to ADC_INJECTED_SOFTWARE_START, external triggers are disabled
|
|
|
+ and software trigger is used instead.
|
|
|
+ This parameter can be a value of
|
|
|
+ @ref ADC_injected_external_trigger_source.
|
|
|
+ Caution: this setting impacts the entire injected group. Therefore,
|
|
|
+ call of HAL_ADCEx_InjectedConfigChannel() to configure a channel
|
|
|
+ on injected group can impact the configuration of other channels
|
|
|
+ previously set. */
|
|
|
|
|
|
uint32_t ExternalTrigInjecConvEdge; /*!< Selects the external trigger edge of injected group.
|
|
|
This parameter can be a value of @ref ADC_injected_external_trigger_edge.
|
|
|
- If trigger source is set to ADC_INJECTED_SOFTWARE_START, this parameter is discarded.
|
|
|
- Caution: this setting impacts the entire injected group. Therefore, call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
- configure a channel on injected group can impact the configuration of other channels previously set. */
|
|
|
+ If trigger source is set to ADC_INJECTED_SOFTWARE_START, this parameter
|
|
|
+ is discarded.
|
|
|
+ Caution: this setting impacts the entire injected group. Therefore,
|
|
|
+ call of HAL_ADCEx_InjectedConfigChannel() to
|
|
|
+ configure a channel on injected group can impact the
|
|
|
+ configuration of other channels previously set. */
|
|
|
|
|
|
FunctionalState InjecOversamplingMode; /*!< Specifies whether the oversampling feature is enabled or disabled.
|
|
|
This parameter can be set to ENABLE or DISABLE.
|
|
|
- Note: This parameter can be modified only if there is no conversion is ongoing (both ADSTART and JADSTART cleared). */
|
|
|
+ Note: This parameter can be modified only if there is no
|
|
|
+ conversion is ongoing (both ADSTART and JADSTART cleared). */
|
|
|
|
|
|
ADC_InjOversamplingTypeDef InjecOversampling; /*!< Specifies the Oversampling parameters.
|
|
|
- Caution: this setting overwrites the previous oversampling configuration if oversampling already enabled.
|
|
|
- Note: This parameter can be modified only if there is no conversion is ongoing (both ADSTART and JADSTART cleared). */
|
|
|
+ Caution: this setting overwrites the previous oversampling
|
|
|
+ configuration if oversampling already enabled.
|
|
|
+ Note: This parameter can be modified only if there is no
|
|
|
+ conversion is ongoing (both ADSTART and JADSTART cleared).*/
|
|
|
} ADC_InjectionConfTypeDef;
|
|
|
|
|
|
#if defined(ADC_MULTIMODE_SUPPORT)
|
|
|
/**
|
|
|
* @brief Structure definition of ADC multimode
|
|
|
- * @note The setting of these parameters by function HAL_ADCEx_MultiModeConfigChannel() is conditioned by ADCs state (both Master and Slave ADCs).
|
|
|
+ * @note The setting of these parameters by function HAL_ADCEx_MultiModeConfigChannel() is conditioned by ADCs state
|
|
|
+ * (both Master and Slave ADCs).
|
|
|
* Both Master and Slave ADCs must be disabled.
|
|
|
*/
|
|
|
typedef struct
|
|
|
@@ -182,7 +247,8 @@ typedef struct
|
|
|
This parameter can be a value of @ref ADC_HAL_EC_MULTI_MODE. */
|
|
|
|
|
|
uint32_t DMAAccessMode; /*!< Configures the DMA mode for multimode ADC:
|
|
|
- selection whether 2 DMA channels (each ADC uses its own DMA channel) or 1 DMA channel (one DMA channel for both ADC, DMA of ADC master)
|
|
|
+ selection whether 2 DMA channels (each ADC uses its own DMA channel) or 1 DMA channel
|
|
|
+ (one DMA channel for both ADC, DMA of ADC master).
|
|
|
This parameter can be a value of @ref ADC_HAL_EC_MULTI_DMA_TRANSFER_RESOLUTION. */
|
|
|
|
|
|
uint32_t TwoSamplingDelay; /*!< Configures the Delay between 2 sampling phases.
|
|
|
@@ -207,23 +273,40 @@ typedef struct
|
|
|
* @{
|
|
|
*/
|
|
|
/* ADC group regular trigger sources for all ADC instances */
|
|
|
-#define ADC_INJECTED_SOFTWARE_START (LL_ADC_INJ_TRIG_SOFTWARE) /*!< Software triggers injected group conversion start */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T1_TRGO (LL_ADC_INJ_TRIG_EXT_TIM1_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM1 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T1_TRGO2 (LL_ADC_INJ_TRIG_EXT_TIM1_TRGO2) /*!< ADC group injected conversion trigger from external peripheral: TIM1 TRGO2. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T1_CC4 (LL_ADC_INJ_TRIG_EXT_TIM1_CH4) /*!< ADC group injected conversion trigger from external peripheral: TIM1 channel 4 event (capture compare: input capture or output capture). Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T2_TRGO (LL_ADC_INJ_TRIG_EXT_TIM2_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM2 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T2_CC1 (LL_ADC_INJ_TRIG_EXT_TIM2_CH1) /*!< ADC group injected conversion trigger from external peripheral: TIM2 channel 1 event (capture compare: input capture or output capture). Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T3_TRGO (LL_ADC_INJ_TRIG_EXT_TIM3_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM3 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T3_CC1 (LL_ADC_INJ_TRIG_EXT_TIM3_CH1) /*!< ADC group injected conversion trigger from external peripheral: TIM3 channel 1 event (capture compare: input capture or output capture). Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T3_CC3 (LL_ADC_INJ_TRIG_EXT_TIM3_CH3) /*!< ADC group injected conversion trigger from external peripheral: TIM3 channel 3 event (capture compare: input capture or output capture). Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T3_CC4 (LL_ADC_INJ_TRIG_EXT_TIM3_CH4) /*!< ADC group injected conversion trigger from external peripheral: TIM3 channel 4 event (capture compare: input capture or output capture). Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T4_TRGO (LL_ADC_INJ_TRIG_EXT_TIM4_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM4 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T6_TRGO (LL_ADC_INJ_TRIG_EXT_TIM6_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM6 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T8_CC4 (LL_ADC_INJ_TRIG_EXT_TIM8_CH4) /*!< ADC group injected conversion trigger from external peripheral: TIM8 channel 4 event (capture compare: input capture or output capture). Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T8_TRGO (LL_ADC_INJ_TRIG_EXT_TIM8_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM8 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T8_TRGO2 (LL_ADC_INJ_TRIG_EXT_TIM8_TRGO2) /*!< ADC group injected conversion trigger from external peripheral: TIM8 TRGO2. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_T15_TRGO (LL_ADC_INJ_TRIG_EXT_TIM15_TRGO) /*!< ADC group injected conversion trigger from external peripheral: TIM15 TRGO. Trigger edge set to rising edge (default setting). */
|
|
|
-#define ADC_EXTERNALTRIGINJEC_EXT_IT15 (LL_ADC_INJ_TRIG_EXT_EXTI_LINE15) /*!< ADC group injected conversion trigger from external peripheral: external interrupt line 15. Trigger edge set to rising edge (default setting). */
|
|
|
+#define ADC_INJECTED_SOFTWARE_START (LL_ADC_INJ_TRIG_SOFTWARE) /*!< ADC group injected conversion
|
|
|
+ trigger software start */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T1_TRGO (LL_ADC_INJ_TRIG_EXT_TIM1_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM1 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T1_TRGO2 (LL_ADC_INJ_TRIG_EXT_TIM1_TRGO2) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM1 TRGO2. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T1_CC4 (LL_ADC_INJ_TRIG_EXT_TIM1_CH4) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM1 channel 4 event (capture compare). */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T2_TRGO (LL_ADC_INJ_TRIG_EXT_TIM2_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM2 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T2_CC1 (LL_ADC_INJ_TRIG_EXT_TIM2_CH1) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM2 channel 1 event (capture compare). */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T3_TRGO (LL_ADC_INJ_TRIG_EXT_TIM3_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM3 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T3_CC1 (LL_ADC_INJ_TRIG_EXT_TIM3_CH1) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM3 channel 1 event (capture compare). */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T3_CC3 (LL_ADC_INJ_TRIG_EXT_TIM3_CH3) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM3 channel 3 event (capture compare). */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T3_CC4 (LL_ADC_INJ_TRIG_EXT_TIM3_CH4) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM3 channel 4 event (capture compare). */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T4_TRGO (LL_ADC_INJ_TRIG_EXT_TIM4_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM4 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T6_TRGO (LL_ADC_INJ_TRIG_EXT_TIM6_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM6 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T8_CC4 (LL_ADC_INJ_TRIG_EXT_TIM8_CH4) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM8 channel 4 event (capture compare). */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T8_TRGO (LL_ADC_INJ_TRIG_EXT_TIM8_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM8 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T8_TRGO2 (LL_ADC_INJ_TRIG_EXT_TIM8_TRGO2) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM8 TRGO2. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_T15_TRGO (LL_ADC_INJ_TRIG_EXT_TIM15_TRGO) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: TIM15 TRGO. */
|
|
|
+#define ADC_EXTERNALTRIGINJEC_EXT_IT15 (LL_ADC_INJ_TRIG_EXT_EXTI_LINE15) /*!< ADC group injected conversion
|
|
|
+ trigger from external peripheral: external interrupt line 15. */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -231,10 +314,14 @@ typedef struct
|
|
|
/** @defgroup ADC_injected_external_trigger_edge ADC group injected trigger edge (when external trigger is selected)
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_EXTERNALTRIGINJECCONV_EDGE_NONE (0x00000000UL) /*!< Injected conversions hardware trigger detection disabled */
|
|
|
-#define ADC_EXTERNALTRIGINJECCONV_EDGE_RISING (ADC_JSQR_JEXTEN_0) /*!< Injected conversions hardware trigger detection on the rising edge */
|
|
|
-#define ADC_EXTERNALTRIGINJECCONV_EDGE_FALLING (ADC_JSQR_JEXTEN_1) /*!< Injected conversions hardware trigger detection on the falling edge */
|
|
|
-#define ADC_EXTERNALTRIGINJECCONV_EDGE_RISINGFALLING (ADC_JSQR_JEXTEN) /*!< Injected conversions hardware trigger detection on both the rising and falling edges */
|
|
|
+#define ADC_EXTERNALTRIGINJECCONV_EDGE_NONE (0x00000000UL) /*!< Injected conversions trigger
|
|
|
+ disabled (SW start)*/
|
|
|
+#define ADC_EXTERNALTRIGINJECCONV_EDGE_RISING (ADC_JSQR_JEXTEN_0) /*!< Injected conversions trigger
|
|
|
+ polarity set to rising edge */
|
|
|
+#define ADC_EXTERNALTRIGINJECCONV_EDGE_FALLING (ADC_JSQR_JEXTEN_1) /*!< Injected conversions trigger
|
|
|
+ polarity set to falling edge */
|
|
|
+#define ADC_EXTERNALTRIGINJECCONV_EDGE_RISINGFALLING (ADC_JSQR_JEXTEN) /*!< Injected conversions trigger
|
|
|
+ polarity set to both rising and falling edges */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -242,8 +329,8 @@ typedef struct
|
|
|
/** @defgroup ADC_HAL_EC_CHANNEL_SINGLE_DIFF_ENDING Channel - Single or differential ending
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_SINGLE_ENDED (LL_ADC_SINGLE_ENDED) /*!< ADC channel ending set to single ended (literal also used to set calibration mode) */
|
|
|
-#define ADC_DIFFERENTIAL_ENDED (LL_ADC_DIFFERENTIAL_ENDED) /*!< ADC channel ending set to differential (literal also used to set calibration mode) */
|
|
|
+#define ADC_SINGLE_ENDED (LL_ADC_SINGLE_ENDED) /*!< ADC channel ending set to single ended */
|
|
|
+#define ADC_DIFFERENTIAL_ENDED (LL_ADC_DIFFERENTIAL_ENDED) /*!< ADC channel ending set to differential */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -251,11 +338,20 @@ typedef struct
|
|
|
/** @defgroup ADC_HAL_EC_OFFSET_NB ADC instance - Offset number
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_OFFSET_NONE (ADC_OFFSET_4 + 1U) /*!< ADC offset disabled: no offset correction for the selected ADC channel */
|
|
|
-#define ADC_OFFSET_1 (LL_ADC_OFFSET_1) /*!< ADC offset number 1: ADC channel and offset level to which the offset programmed will be applied (independently of channel mapped on ADC group regular or group injected) */
|
|
|
-#define ADC_OFFSET_2 (LL_ADC_OFFSET_2) /*!< ADC offset number 2: ADC channel and offset level to which the offset programmed will be applied (independently of channel mapped on ADC group regular or group injected) */
|
|
|
-#define ADC_OFFSET_3 (LL_ADC_OFFSET_3) /*!< ADC offset number 3: ADC channel and offset level to which the offset programmed will be applied (independently of channel mapped on ADC group regular or group injected) */
|
|
|
-#define ADC_OFFSET_4 (LL_ADC_OFFSET_4) /*!< ADC offset number 4: ADC channel and offset level to which the offset programmed will be applied (independently of channel mapped on ADC group regular or group injected) */
|
|
|
+#define ADC_OFFSET_NONE (ADC_OFFSET_4 + 1U) /*!< ADC offset disabled: no offset correction for the selected
|
|
|
+ ADC channel */
|
|
|
+#define ADC_OFFSET_1 (LL_ADC_OFFSET_1) /*!< ADC offset number 1: ADC channel and offset level to which
|
|
|
+ the offset programmed will be applied (independently of channel mapped
|
|
|
+ on ADC group regular or group injected) */
|
|
|
+#define ADC_OFFSET_2 (LL_ADC_OFFSET_2) /*!< ADC offset number 2: ADC channel and offset level to which
|
|
|
+ the offset programmed will be applied (independently of channel mapped
|
|
|
+ on ADC group regular or group injected) */
|
|
|
+#define ADC_OFFSET_3 (LL_ADC_OFFSET_3) /*!< ADC offset number 3: ADC channel and offset level to which
|
|
|
+ the offset programmed will be applied (independently of channel mapped
|
|
|
+ on ADC group regular or group injected) */
|
|
|
+#define ADC_OFFSET_4 (LL_ADC_OFFSET_4) /*!< ADC offset number 4: ADC channel and offset level to which
|
|
|
+ the offset programmed will be applied (independently of channel mapped
|
|
|
+ on ADC group regular or group injected) */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -275,21 +371,33 @@ typedef struct
|
|
|
/** @defgroup ADC_HAL_EC_MULTI_MODE Multimode - Mode
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_MODE_INDEPENDENT (LL_ADC_MULTI_INDEPENDENT) /*!< ADC dual mode disabled (ADC independent mode) */
|
|
|
-#define ADC_DUALMODE_REGSIMULT (LL_ADC_MULTI_DUAL_REG_SIMULT) /*!< ADC dual mode enabled: group regular simultaneous */
|
|
|
-#define ADC_DUALMODE_INTERL (LL_ADC_MULTI_DUAL_REG_INTERL) /*!< ADC dual mode enabled: Combined group regular interleaved */
|
|
|
-#define ADC_DUALMODE_INJECSIMULT (LL_ADC_MULTI_DUAL_INJ_SIMULT) /*!< ADC dual mode enabled: group injected simultaneous */
|
|
|
-#define ADC_DUALMODE_ALTERTRIG (LL_ADC_MULTI_DUAL_INJ_ALTERN) /*!< ADC dual mode enabled: group injected alternate trigger. Works only with external triggers (not internal SW start) */
|
|
|
-#define ADC_DUALMODE_REGSIMULT_INJECSIMULT (LL_ADC_MULTI_DUAL_REG_SIM_INJ_SIM) /*!< ADC dual mode enabled: Combined group regular simultaneous + group injected simultaneous */
|
|
|
-#define ADC_DUALMODE_REGSIMULT_ALTERTRIG (LL_ADC_MULTI_DUAL_REG_SIM_INJ_ALT) /*!< ADC dual mode enabled: Combined group regular simultaneous + group injected alternate trigger */
|
|
|
-#define ADC_DUALMODE_REGINTERL_INJECSIMULT (LL_ADC_MULTI_DUAL_REG_INT_INJ_SIM) /*!< ADC dual mode enabled: Combined group regular interleaved + group injected simultaneous */
|
|
|
+#define ADC_MODE_INDEPENDENT (LL_ADC_MULTI_INDEPENDENT) /*!< ADC dual mode disabled
|
|
|
+ (ADC independent mode) */
|
|
|
+#define ADC_DUALMODE_REGSIMULT (LL_ADC_MULTI_DUAL_REG_SIMULT) /*!< ADC dual mode enabled: group regular
|
|
|
+ simultaneous */
|
|
|
+#define ADC_DUALMODE_INTERL (LL_ADC_MULTI_DUAL_REG_INTERL) /*!< ADC dual mode enabled: Combined
|
|
|
+ group regular interleaved */
|
|
|
+#define ADC_DUALMODE_INJECSIMULT (LL_ADC_MULTI_DUAL_INJ_SIMULT) /*!< ADC dual mode enabled: group
|
|
|
+ injected simultaneous */
|
|
|
+#define ADC_DUALMODE_ALTERTRIG (LL_ADC_MULTI_DUAL_INJ_ALTERN) /*!< ADC dual mode enabled: group
|
|
|
+ injected alternate trigger. Works only with external triggers (not internal
|
|
|
+ SW start) */
|
|
|
+#define ADC_DUALMODE_REGSIMULT_INJECSIMULT (LL_ADC_MULTI_DUAL_REG_SIM_INJ_SIM) /*!< ADC dual mode enabled: Combined
|
|
|
+ group regular simultaneous + group injected simultaneous */
|
|
|
+#define ADC_DUALMODE_REGSIMULT_ALTERTRIG (LL_ADC_MULTI_DUAL_REG_SIM_INJ_ALT) /*!< ADC dual mode enabled: Combined
|
|
|
+ group regular simultaneous + group injected alternate trigger */
|
|
|
+#define ADC_DUALMODE_REGINTERL_INJECSIMULT (LL_ADC_MULTI_DUAL_REG_INT_INJ_SIM) /*!< ADC dual mode enabled: Combined
|
|
|
+ group regular interleaved + group injected simultaneous */
|
|
|
|
|
|
/** @defgroup ADC_HAL_EC_MULTI_DMA_TRANSFER_RESOLUTION Multimode - DMA transfer mode depending on ADC resolution
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_DMAACCESSMODE_DISABLED (0x00000000UL) /*!< DMA multimode disabled: each ADC uses its own DMA channel */
|
|
|
-#define ADC_DMAACCESSMODE_12_10_BITS (ADC_CCR_MDMA_1) /*!< DMA multimode enabled (one DMA channel for both ADC, DMA of ADC master) for 12 and 10 bits resolution */
|
|
|
-#define ADC_DMAACCESSMODE_8_6_BITS (ADC_CCR_MDMA) /*!< DMA multimode enabled (one DMA channel for both ADC, DMA of ADC master) for 8 and 6 bits resolution */
|
|
|
+#define ADC_DMAACCESSMODE_DISABLED (0x00000000UL) /*!< DMA multimode disabled: each ADC uses its own
|
|
|
+ DMA channel */
|
|
|
+#define ADC_DMAACCESSMODE_12_10_BITS (ADC_CCR_MDMA_1) /*!< DMA multimode enabled (one DMA channel for both ADC,
|
|
|
+ DMA of ADC master) for 12 and 10 bits resolution */
|
|
|
+#define ADC_DMAACCESSMODE_8_6_BITS (ADC_CCR_MDMA) /*!< DMA multimode enabled (one DMA channel for both ADC,
|
|
|
+ DMA of ADC master) for 8 and 6 bits resolution */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -297,18 +405,30 @@ typedef struct
|
|
|
/** @defgroup ADC_HAL_EC_MULTI_TWOSMP_DELAY Multimode - Delay between two sampling phases
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_TWOSAMPLINGDELAY_1CYCLE (LL_ADC_MULTI_TWOSMP_DELAY_1CYCLE) /*!< ADC multimode delay between two sampling phases: 1 ADC clock cycle */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_2CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_2CYCLES) /*!< ADC multimode delay between two sampling phases: 2 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_3CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_3CYCLES) /*!< ADC multimode delay between two sampling phases: 3 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_4CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_4CYCLES) /*!< ADC multimode delay between two sampling phases: 4 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_5CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_5CYCLES) /*!< ADC multimode delay between two sampling phases: 5 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_6CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_6CYCLES) /*!< ADC multimode delay between two sampling phases: 6 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_7CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_7CYCLES) /*!< ADC multimode delay between two sampling phases: 7 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_8CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_8CYCLES) /*!< ADC multimode delay between two sampling phases: 8 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_9CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_9CYCLES) /*!< ADC multimode delay between two sampling phases: 9 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_10CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_10CYCLES) /*!< ADC multimode delay between two sampling phases: 10 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_11CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_11CYCLES) /*!< ADC multimode delay between two sampling phases: 11 ADC clock cycles */
|
|
|
-#define ADC_TWOSAMPLINGDELAY_12CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_12CYCLES) /*!< ADC multimode delay between two sampling phases: 12 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_1CYCLE (LL_ADC_MULTI_TWOSMP_DELAY_1CYCLE) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 1 ADC clock cycle */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_2CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_2CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 2 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_3CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_3CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 3 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_4CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_4CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 4 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_5CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_5CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 5 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_6CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_6CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 6 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_7CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_7CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 7 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_8CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_8CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 8 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_9CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_9CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 9 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_10CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_10CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 10 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_11CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_11CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 11 ADC clock cycles */
|
|
|
+#define ADC_TWOSAMPLINGDELAY_12CYCLES (LL_ADC_MULTI_TWOSMP_DELAY_12CYCLES) /*!< ADC multimode delay between two
|
|
|
+ sampling phases: 12 ADC clock cycles */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -321,9 +441,11 @@ typedef struct
|
|
|
/** @defgroup ADC_HAL_EC_GROUPS ADC instance - Groups
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_REGULAR_GROUP (LL_ADC_GROUP_REGULAR) /*!< ADC group regular (available on all STM32 devices) */
|
|
|
-#define ADC_INJECTED_GROUP (LL_ADC_GROUP_INJECTED) /*!< ADC group injected (not available on all STM32 devices)*/
|
|
|
-#define ADC_REGULAR_INJECTED_GROUP (LL_ADC_GROUP_REGULAR_INJECTED) /*!< ADC both groups regular and injected */
|
|
|
+#define ADC_REGULAR_GROUP (LL_ADC_GROUP_REGULAR) /*!< ADC group regular (available on
|
|
|
+ all STM32 devices) */
|
|
|
+#define ADC_INJECTED_GROUP (LL_ADC_GROUP_INJECTED) /*!< ADC group injected (not available on
|
|
|
+ all STM32 devices) */
|
|
|
+#define ADC_REGULAR_INJECTED_GROUP (LL_ADC_GROUP_REGULAR_INJECTED) /*!< ADC both groups regular and injected */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -386,8 +508,12 @@ typedef struct
|
|
|
/** @defgroup ADC_HAL_EC_REG_DFSDM_TRANSFER ADC group regular - DFSDM transfer of ADC conversion data
|
|
|
* @{
|
|
|
*/
|
|
|
-#define ADC_DFSDM_MODE_DISABLE (0x00000000UL) /*!< ADC conversions are not transferred by DFSDM. */
|
|
|
-#define ADC_DFSDM_MODE_ENABLE (LL_ADC_REG_DFSDM_TRANSFER_ENABLE) /*!< ADC conversion data are transferred to DFSDM for post processing. The ADC conversion data format must be 16-bit signed and right aligned, refer to reference manual. DFSDM transfer cannot be used if DMA transfer is enabled. */
|
|
|
+#define ADC_DFSDM_MODE_DISABLE (0x00000000UL) /*!< ADC conversions are not transferred
|
|
|
+ by DFSDM. */
|
|
|
+#define ADC_DFSDM_MODE_ENABLE (LL_ADC_REG_DFSDM_TRANSFER_ENABLE) /*!< ADC conversion data are transferred
|
|
|
+ to DFSDM for post processing. The ADC conversion data format must be 16-bit
|
|
|
+ signed and right aligned, refer to reference manual.
|
|
|
+ DFSDM transfer cannot be used if DMA transfer is enabled. */
|
|
|
/**
|
|
|
* @}
|
|
|
*/
|
|
|
@@ -470,15 +596,16 @@ typedef struct
|
|
|
#define ADC_IS_INDEPENDENT(__HANDLE__) \
|
|
|
( ( ( ((__HANDLE__)->Instance) == ADC3) \
|
|
|
)? \
|
|
|
- SET \
|
|
|
- : \
|
|
|
- RESET \
|
|
|
+ SET \
|
|
|
+ : \
|
|
|
+ RESET \
|
|
|
)
|
|
|
#elif defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx)
|
|
|
#define ADC_IS_INDEPENDENT(__HANDLE__) (SET)
|
|
|
#elif defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx)
|
|
|
#define ADC_IS_INDEPENDENT(__HANDLE__) (RESET)
|
|
|
-#endif /* (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) || defined (STM32L496xx) || defined (STM32L4A6xx) */
|
|
|
+#endif /* defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) ||
|
|
|
+ defined (STM32L486xx) || defined (STM32L496xx) || defined (STM32L4A6xx) */
|
|
|
|
|
|
/**
|
|
|
* @brief Set the selected injected Channel rank.
|
|
|
@@ -486,36 +613,41 @@ typedef struct
|
|
|
* @param __RANKNB__ Rank number.
|
|
|
* @retval None
|
|
|
*/
|
|
|
-#define ADC_JSQR_RK(__CHANNELNB__, __RANKNB__) ((((__CHANNELNB__)\
|
|
|
- & ADC_CHANNEL_ID_NUMBER_MASK) >> ADC_CHANNEL_ID_NUMBER_BITOFFSET_POS) << ((__RANKNB__) & ADC_INJ_RANK_ID_JSQR_MASK))
|
|
|
+#define ADC_JSQR_RK(__CHANNELNB__, __RANKNB__) \
|
|
|
+ ((((__CHANNELNB__) & ADC_CHANNEL_ID_NUMBER_MASK) >> ADC_CHANNEL_ID_NUMBER_BITOFFSET_POS) \
|
|
|
+ << ((__RANKNB__) & ADC_INJ_RANK_ID_JSQR_MASK))
|
|
|
|
|
|
/**
|
|
|
* @brief Configure ADC injected context queue
|
|
|
* @param __INJECT_CONTEXT_QUEUE_MODE__ Injected context queue mode.
|
|
|
* @retval None
|
|
|
*/
|
|
|
-#define ADC_CFGR_INJECT_CONTEXT_QUEUE(__INJECT_CONTEXT_QUEUE_MODE__) ((__INJECT_CONTEXT_QUEUE_MODE__) << ADC_CFGR_JQM_Pos)
|
|
|
+#define ADC_CFGR_INJECT_CONTEXT_QUEUE(__INJECT_CONTEXT_QUEUE_MODE__) \
|
|
|
+ ((__INJECT_CONTEXT_QUEUE_MODE__) << ADC_CFGR_JQM_Pos)
|
|
|
|
|
|
/**
|
|
|
* @brief Configure ADC discontinuous conversion mode for injected group
|
|
|
* @param __INJECT_DISCONTINUOUS_MODE__ Injected discontinuous mode.
|
|
|
* @retval None
|
|
|
*/
|
|
|
-#define ADC_CFGR_INJECT_DISCCONTINUOUS(__INJECT_DISCONTINUOUS_MODE__) ((__INJECT_DISCONTINUOUS_MODE__) << ADC_CFGR_JDISCEN_Pos)
|
|
|
+#define ADC_CFGR_INJECT_DISCCONTINUOUS(__INJECT_DISCONTINUOUS_MODE__) \
|
|
|
+ ((__INJECT_DISCONTINUOUS_MODE__) << ADC_CFGR_JDISCEN_Pos)
|
|
|
|
|
|
/**
|
|
|
* @brief Configure ADC discontinuous conversion mode for regular group
|
|
|
* @param __REG_DISCONTINUOUS_MODE__ Regular discontinuous mode.
|
|
|
* @retval None
|
|
|
*/
|
|
|
-#define ADC_CFGR_REG_DISCONTINUOUS(__REG_DISCONTINUOUS_MODE__) ((__REG_DISCONTINUOUS_MODE__) << ADC_CFGR_DISCEN_Pos)
|
|
|
+#define ADC_CFGR_REG_DISCONTINUOUS(__REG_DISCONTINUOUS_MODE__) \
|
|
|
+ ((__REG_DISCONTINUOUS_MODE__) << ADC_CFGR_DISCEN_Pos)
|
|
|
|
|
|
/**
|
|
|
* @brief Configure the number of discontinuous conversions for regular group.
|
|
|
* @param __NBR_DISCONTINUOUS_CONV__ Number of discontinuous conversions.
|
|
|
* @retval None
|
|
|
*/
|
|
|
-#define ADC_CFGR_DISCONTINUOUS_NUM(__NBR_DISCONTINUOUS_CONV__) (((__NBR_DISCONTINUOUS_CONV__) - 1UL) << ADC_CFGR_DISCNUM_Pos)
|
|
|
+#define ADC_CFGR_DISCONTINUOUS_NUM(__NBR_DISCONTINUOUS_CONV__) \
|
|
|
+ (((__NBR_DISCONTINUOUS_CONV__) - 1UL) << ADC_CFGR_DISCNUM_Pos)
|
|
|
|
|
|
/**
|
|
|
* @brief Configure the ADC auto delay mode.
|
|
|
@@ -557,8 +689,8 @@ typedef struct
|
|
|
* @param __CALIBRATION_FACTOR__ Calibration factor value.
|
|
|
* @retval None
|
|
|
*/
|
|
|
-#define ADC_CALFACT_DIFF_SET(__CALIBRATION_FACTOR__) (((__CALIBRATION_FACTOR__)\
|
|
|
- & (ADC_CALFACT_CALFACT_D_Pos >> ADC_CALFACT_CALFACT_D_Pos) ) << ADC_CALFACT_CALFACT_D_Pos)
|
|
|
+#define ADC_CALFACT_DIFF_SET(__CALIBRATION_FACTOR__) \
|
|
|
+ (((__CALIBRATION_FACTOR__) & (ADC_CALFACT_CALFACT_D_Pos >> ADC_CALFACT_CALFACT_D_Pos) ) << ADC_CALFACT_CALFACT_D_Pos)
|
|
|
|
|
|
/**
|
|
|
* @brief Calibration factor in differential mode to be retrieved from calibration register.
|
|
|
@@ -661,12 +793,15 @@ typedef struct
|
|
|
* @brief Set handle instance of the ADC slave associated to the ADC master.
|
|
|
* @param __HANDLE_MASTER__ ADC master handle.
|
|
|
* @param __HANDLE_SLAVE__ ADC slave handle.
|
|
|
- * @note if __HANDLE_MASTER__ is the handle of a slave ADC or an independent ADC, __HANDLE_SLAVE__ instance is set to NULL.
|
|
|
+ * @note if __HANDLE_MASTER__ is the handle of a slave ADC or an independent ADC, __HANDLE_SLAVE__ instance is
|
|
|
+ * set to NULL.
|
|
|
* @retval None
|
|
|
*/
|
|
|
#define ADC_MULTI_SLAVE(__HANDLE_MASTER__, __HANDLE_SLAVE__) \
|
|
|
- ( (((__HANDLE_MASTER__)->Instance == ADC1)) ? ((__HANDLE_SLAVE__)->Instance = ADC2) : ((__HANDLE_SLAVE__)->Instance = NULL) )
|
|
|
-#endif /* defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) */
|
|
|
+ ( (((__HANDLE_MASTER__)->Instance == ADC1)) ? \
|
|
|
+ ((__HANDLE_SLAVE__)->Instance = ADC2) : ((__HANDLE_SLAVE__)->Instance = NULL) )
|
|
|
+#endif /* defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L471xx) || defined (STM32L475xx) ||
|
|
|
+ defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) */
|
|
|
|
|
|
|
|
|
/**
|
|
|
@@ -681,7 +816,11 @@ typedef struct
|
|
|
/* The temperature sensor measurement path (channel 17) is available on ADC1 and ADC3 */
|
|
|
#define ADC_TEMPERATURE_SENSOR_INSTANCE(__HANDLE__) ((((__HANDLE__)->Instance) == ADC1)\
|
|
|
|| (((__HANDLE__)->Instance) == ADC3))
|
|
|
-#endif /* (STM32L412xx) || defined (STM32L422xx) || defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) || defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
+#endif /* defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L431xx) || defined (STM32L432xx) ||
|
|
|
+ defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) ||
|
|
|
+ defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) ||
|
|
|
+ defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) ||
|
|
|
+ defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
|
|
|
/**
|
|
|
* @brief Verify the ADC instance connected to the battery voltage VBAT.
|
|
|
@@ -695,7 +834,11 @@ typedef struct
|
|
|
/* The battery voltage measurement path (channel 18) is available on ADC1 and ADC3 */
|
|
|
#define ADC_BATTERY_VOLTAGE_INSTANCE(__HANDLE__) ((((__HANDLE__)->Instance) == ADC1)\
|
|
|
|| (((__HANDLE__)->Instance) == ADC3))
|
|
|
-#endif /* (STM32L412xx) || defined (STM32L422xx) || defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) || defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
+#endif /* defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L431xx) || defined (STM32L432xx) ||
|
|
|
+ defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) ||
|
|
|
+ defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) ||
|
|
|
+ defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) ||
|
|
|
+ defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
|
|
|
/**
|
|
|
* @brief Verify the ADC instance connected to the internal voltage reference VREFINT.
|
|
|
@@ -708,7 +851,8 @@ typedef struct
|
|
|
/**
|
|
|
* @brief Verify the length of scheduled injected conversions group.
|
|
|
* @param __LENGTH__ number of programmed conversions.
|
|
|
- * @retval SET (__LENGTH__ is within the maximum number of possible programmable injected conversions) or RESET (__LENGTH__ is null or too large)
|
|
|
+ * @retval SET (__LENGTH__ is within the maximum number of possible programmable injected conversions)
|
|
|
+ * or RESET (__LENGTH__ is null or too large)
|
|
|
*/
|
|
|
#define IS_ADC_INJECTED_NB_CONV(__LENGTH__) (((__LENGTH__) >= (1U)) && ((__LENGTH__) <= (4U)))
|
|
|
|
|
|
@@ -892,7 +1036,10 @@ typedef struct
|
|
|
((__CHANNEL__) == ADC_CHANNEL_VBAT) || \
|
|
|
((__CHANNEL__) == ADC_CHANNEL_DAC1CH1_ADC3) || \
|
|
|
((__CHANNEL__) == ADC_CHANNEL_DAC1CH2_ADC3) )))
|
|
|
-#endif /* (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
+#endif /* defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) ||
|
|
|
+ defined (STM32L443xx) || defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx) ||
|
|
|
+ defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) ||
|
|
|
+ defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
|
|
|
/**
|
|
|
* @brief Verify the ADC channel setting in differential mode.
|
|
|
@@ -949,7 +1096,11 @@ typedef struct
|
|
|
((__CHANNEL__) == ADC_CHANNEL_10) || \
|
|
|
((__CHANNEL__) == ADC_CHANNEL_11) || \
|
|
|
((__CHANNEL__) == ADC_CHANNEL_12) )))
|
|
|
-#endif /* (STM32L412xx) || defined (STM32L422xx) || defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) || defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
+#endif /* defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L431xx) || defined (STM32L432xx) ||
|
|
|
+ defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L451xx) ||
|
|
|
+ defined (STM32L452xx) || defined (STM32L462xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) ||
|
|
|
+ defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) ||
|
|
|
+ defined (STM32L4S7xx) || defined (STM32L4S9xx) */
|
|
|
|
|
|
/**
|
|
|
* @brief Verify the ADC single-ended input or differential mode setting.
|
|
|
@@ -1071,13 +1222,13 @@ typedef struct
|
|
|
* @param __WATCHDOG_MODE__ programmed ADC analog watchdog mode setting.
|
|
|
* @retval SET (__WATCHDOG_MODE__ is valid) or RESET (__WATCHDOG_MODE__ is invalid)
|
|
|
*/
|
|
|
-#define IS_ADC_ANALOG_WATCHDOG_MODE(__WATCHDOG_MODE__) (((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_NONE) || \
|
|
|
- ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_SINGLE_REG) || \
|
|
|
- ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_SINGLE_INJEC) || \
|
|
|
- ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_SINGLE_REGINJEC) || \
|
|
|
- ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_ALL_REG) || \
|
|
|
- ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_ALL_INJEC) || \
|
|
|
- ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_ALL_REGINJEC) )
|
|
|
+#define IS_ADC_ANALOG_WATCHDOG_MODE(__WATCHDOG_MODE__) (((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_NONE) || \
|
|
|
+ ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_SINGLE_REG) || \
|
|
|
+ ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_SINGLE_INJEC) || \
|
|
|
+ ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_SINGLE_REGINJEC) || \
|
|
|
+ ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_ALL_REG) || \
|
|
|
+ ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_ALL_INJEC) || \
|
|
|
+ ((__WATCHDOG_MODE__) == ADC_ANALOGWATCHDOG_ALL_REGINJEC) )
|
|
|
|
|
|
/**
|
|
|
* @brief Verify the ADC conversion (regular or injected or both).
|
|
|
@@ -1191,7 +1342,7 @@ typedef struct
|
|
|
|
|
|
/* ADC calibration */
|
|
|
HAL_StatusTypeDef HAL_ADCEx_Calibration_Start(ADC_HandleTypeDef *hadc, uint32_t SingleDiff);
|
|
|
-uint32_t HAL_ADCEx_Calibration_GetValue(ADC_HandleTypeDef *hadc, uint32_t SingleDiff);
|
|
|
+uint32_t HAL_ADCEx_Calibration_GetValue(const ADC_HandleTypeDef *hadc, uint32_t SingleDiff);
|
|
|
HAL_StatusTypeDef HAL_ADCEx_Calibration_SetValue(ADC_HandleTypeDef *hadc, uint32_t SingleDiff,
|
|
|
uint32_t CalibrationFactor);
|
|
|
|
|
|
@@ -1208,11 +1359,11 @@ HAL_StatusTypeDef HAL_ADCEx_InjectedStop_IT(ADC_HandleTypeDef *hadc);
|
|
|
/* ADC multimode */
|
|
|
HAL_StatusTypeDef HAL_ADCEx_MultiModeStart_DMA(ADC_HandleTypeDef *hadc, uint32_t *pData, uint32_t Length);
|
|
|
HAL_StatusTypeDef HAL_ADCEx_MultiModeStop_DMA(ADC_HandleTypeDef *hadc);
|
|
|
-uint32_t HAL_ADCEx_MultiModeGetValue(ADC_HandleTypeDef *hadc);
|
|
|
+uint32_t HAL_ADCEx_MultiModeGetValue(const ADC_HandleTypeDef *hadc);
|
|
|
#endif /* ADC_MULTIMODE_SUPPORT */
|
|
|
|
|
|
/* ADC retrieve conversion value intended to be used with polling or interruption */
|
|
|
-uint32_t HAL_ADCEx_InjectedGetValue(ADC_HandleTypeDef *hadc, uint32_t InjectedRank);
|
|
|
+uint32_t HAL_ADCEx_InjectedGetValue(const ADC_HandleTypeDef *hadc, uint32_t InjectedRank);
|
|
|
|
|
|
/* ADC IRQHandler and Callbacks used in non-blocking modes (Interruption) */
|
|
|
void HAL_ADCEx_InjectedConvCpltCallback(ADC_HandleTypeDef *hadc);
|
|
|
@@ -1222,11 +1373,11 @@ void HAL_ADCEx_LevelOutOfWindow3Callback(ADC_HandleTypeDef *h
|
|
|
void HAL_ADCEx_EndOfSamplingCallback(ADC_HandleTypeDef *hadc);
|
|
|
|
|
|
/* ADC group regular conversions stop */
|
|
|
-HAL_StatusTypeDef HAL_ADCEx_RegularStop(ADC_HandleTypeDef *hadc);
|
|
|
-HAL_StatusTypeDef HAL_ADCEx_RegularStop_IT(ADC_HandleTypeDef *hadc);
|
|
|
-HAL_StatusTypeDef HAL_ADCEx_RegularStop_DMA(ADC_HandleTypeDef *hadc);
|
|
|
+HAL_StatusTypeDef HAL_ADCEx_RegularStop(ADC_HandleTypeDef *hadc);
|
|
|
+HAL_StatusTypeDef HAL_ADCEx_RegularStop_IT(ADC_HandleTypeDef *hadc);
|
|
|
+HAL_StatusTypeDef HAL_ADCEx_RegularStop_DMA(ADC_HandleTypeDef *hadc);
|
|
|
#if defined(ADC_MULTIMODE_SUPPORT)
|
|
|
-HAL_StatusTypeDef HAL_ADCEx_RegularMultiModeStop_DMA(ADC_HandleTypeDef *hadc);
|
|
|
+HAL_StatusTypeDef HAL_ADCEx_RegularMultiModeStop_DMA(ADC_HandleTypeDef *hadc);
|
|
|
#endif /* ADC_MULTIMODE_SUPPORT */
|
|
|
|
|
|
/**
|
|
|
@@ -1238,10 +1389,12 @@ HAL_StatusTypeDef HAL_ADCEx_RegularMultiModeStop_DMA(ADC_HandleTypeDef *hadc);
|
|
|
*/
|
|
|
/* Peripheral Control functions ***********************************************/
|
|
|
HAL_StatusTypeDef HAL_ADCEx_InjectedConfigChannel(ADC_HandleTypeDef *hadc,
|
|
|
- ADC_InjectionConfTypeDef *sConfigInjected);
|
|
|
+ const ADC_InjectionConfTypeDef *pConfigInjected);
|
|
|
#if defined(ADC_MULTIMODE_SUPPORT)
|
|
|
-HAL_StatusTypeDef HAL_ADCEx_MultiModeConfigChannel(ADC_HandleTypeDef *hadc, ADC_MultiModeTypeDef *multimode);
|
|
|
+HAL_StatusTypeDef HAL_ADCEx_MultiModeConfigChannel(ADC_HandleTypeDef *hadc,
|
|
|
+ const ADC_MultiModeTypeDef *pMultimode);
|
|
|
#endif /* ADC_MULTIMODE_SUPPORT */
|
|
|
+
|
|
|
HAL_StatusTypeDef HAL_ADCEx_EnableInjectedQueue(ADC_HandleTypeDef *hadc);
|
|
|
HAL_StatusTypeDef HAL_ADCEx_DisableInjectedQueue(ADC_HandleTypeDef *hadc);
|
|
|
HAL_StatusTypeDef HAL_ADCEx_DisableVoltageRegulator(ADC_HandleTypeDef *hadc);
|