Prusa MINI Firmware overview
stm32f4xx_hal_adc_ex.h File Reference

Header file of ADC HAL module. More...

Go to the source code of this file.

Classes

struct  ADC_InjectionConfTypeDef
 ADC Configuration injected Channel structure definition. More...
 
struct  ADC_MultiModeTypeDef
 ADC Configuration multi-mode structure definition. More...
 

Macros

#define ADC_MODE_INDEPENDENT   0x00000000U
 
#define ADC_DUALMODE_REGSIMULT_INJECSIMULT   ((uint32_t)ADC_CCR_MULTI_0)
 
#define ADC_DUALMODE_REGSIMULT_ALTERTRIG   ((uint32_t)ADC_CCR_MULTI_1)
 
#define ADC_DUALMODE_INJECSIMULT   ((uint32_t)(ADC_CCR_MULTI_2 | ADC_CCR_MULTI_0))
 
#define ADC_DUALMODE_REGSIMULT   ((uint32_t)(ADC_CCR_MULTI_2 | ADC_CCR_MULTI_1))
 
#define ADC_DUALMODE_INTERL   ((uint32_t)(ADC_CCR_MULTI_2 | ADC_CCR_MULTI_1 | ADC_CCR_MULTI_0))
 
#define ADC_DUALMODE_ALTERTRIG   ((uint32_t)(ADC_CCR_MULTI_3 | ADC_CCR_MULTI_0))
 
#define ADC_TRIPLEMODE_REGSIMULT_INJECSIMULT   ((uint32_t)(ADC_CCR_MULTI_4 | ADC_CCR_MULTI_0))
 
#define ADC_TRIPLEMODE_REGSIMULT_AlterTrig   ((uint32_t)(ADC_CCR_MULTI_4 | ADC_CCR_MULTI_1))
 
#define ADC_TRIPLEMODE_INJECSIMULT   ((uint32_t)(ADC_CCR_MULTI_4 | ADC_CCR_MULTI_2 | ADC_CCR_MULTI_0))
 
#define ADC_TRIPLEMODE_REGSIMULT   ((uint32_t)(ADC_CCR_MULTI_4 | ADC_CCR_MULTI_2 | ADC_CCR_MULTI_1))
 
#define ADC_TRIPLEMODE_INTERL   ((uint32_t)(ADC_CCR_MULTI_4 | ADC_CCR_MULTI_2 | ADC_CCR_MULTI_1 | ADC_CCR_MULTI_0))
 
#define ADC_TRIPLEMODE_ALTERTRIG   ((uint32_t)(ADC_CCR_MULTI_4 | ADC_CCR_MULTI_3 | ADC_CCR_MULTI_0))
 
#define ADC_DMAACCESSMODE_DISABLED   0x00000000U
 
#define ADC_DMAACCESSMODE_1   ((uint32_t)ADC_CCR_DMA_0)
 
#define ADC_DMAACCESSMODE_2   ((uint32_t)ADC_CCR_DMA_1)
 
#define ADC_DMAACCESSMODE_3   ((uint32_t)ADC_CCR_DMA)
 
#define ADC_EXTERNALTRIGINJECCONVEDGE_NONE   0x00000000U
 
#define ADC_EXTERNALTRIGINJECCONVEDGE_RISING   ((uint32_t)ADC_CR2_JEXTEN_0)
 
#define ADC_EXTERNALTRIGINJECCONVEDGE_FALLING   ((uint32_t)ADC_CR2_JEXTEN_1)
 
#define ADC_EXTERNALTRIGINJECCONVEDGE_RISINGFALLING   ((uint32_t)ADC_CR2_JEXTEN)
 
#define ADC_EXTERNALTRIGINJECCONV_T1_CC4   0x00000000U
 
#define ADC_EXTERNALTRIGINJECCONV_T1_TRGO   ((uint32_t)ADC_CR2_JEXTSEL_0)
 
#define ADC_EXTERNALTRIGINJECCONV_T2_CC1   ((uint32_t)ADC_CR2_JEXTSEL_1)
 
#define ADC_EXTERNALTRIGINJECCONV_T2_TRGO   ((uint32_t)(ADC_CR2_JEXTSEL_1 | ADC_CR2_JEXTSEL_0))
 
#define ADC_EXTERNALTRIGINJECCONV_T3_CC2   ((uint32_t)ADC_CR2_JEXTSEL_2)
 
#define ADC_EXTERNALTRIGINJECCONV_T3_CC4   ((uint32_t)(ADC_CR2_JEXTSEL_2 | ADC_CR2_JEXTSEL_0))
 
#define ADC_EXTERNALTRIGINJECCONV_T4_CC1   ((uint32_t)(ADC_CR2_JEXTSEL_2 | ADC_CR2_JEXTSEL_1))
 
#define ADC_EXTERNALTRIGINJECCONV_T4_CC2   ((uint32_t)(ADC_CR2_JEXTSEL_2 | ADC_CR2_JEXTSEL_1 | ADC_CR2_JEXTSEL_0))
 
#define ADC_EXTERNALTRIGINJECCONV_T4_CC3   ((uint32_t)ADC_CR2_JEXTSEL_3)
 
#define ADC_EXTERNALTRIGINJECCONV_T4_TRGO   ((uint32_t)(ADC_CR2_JEXTSEL_3 | ADC_CR2_JEXTSEL_0))
 
#define ADC_EXTERNALTRIGINJECCONV_T5_CC4   ((uint32_t)(ADC_CR2_JEXTSEL_3 | ADC_CR2_JEXTSEL_1))
 
#define ADC_EXTERNALTRIGINJECCONV_T5_TRGO   ((uint32_t)(ADC_CR2_JEXTSEL_3 | ADC_CR2_JEXTSEL_1 | ADC_CR2_JEXTSEL_0))
 
#define ADC_EXTERNALTRIGINJECCONV_T8_CC2   ((uint32_t)(ADC_CR2_JEXTSEL_3 | ADC_CR2_JEXTSEL_2))
 
#define ADC_EXTERNALTRIGINJECCONV_T8_CC3   ((uint32_t)(ADC_CR2_JEXTSEL_3 | ADC_CR2_JEXTSEL_2 | ADC_CR2_JEXTSEL_0))
 
#define ADC_EXTERNALTRIGINJECCONV_T8_CC4   ((uint32_t)(ADC_CR2_JEXTSEL_3 | ADC_CR2_JEXTSEL_2 | ADC_CR2_JEXTSEL_1))
 
#define ADC_EXTERNALTRIGINJECCONV_EXT_IT15   ((uint32_t)ADC_CR2_JEXTSEL)
 
#define ADC_INJECTED_SOFTWARE_START   ((uint32_t)ADC_CR2_JEXTSEL + 1U)
 
#define ADC_INJECTED_RANK_1   0x00000001U
 
#define ADC_INJECTED_RANK_2   0x00000002U
 
#define ADC_INJECTED_RANK_3   0x00000003U
 
#define ADC_INJECTED_RANK_4   0x00000004U
 
#define IS_ADC_MODE(MODE)
 
#define IS_ADC_DMA_ACCESS_MODE(MODE)
 
#define IS_ADC_EXT_INJEC_TRIG_EDGE(EDGE)
 
#define IS_ADC_EXT_INJEC_TRIG(INJTRIG)
 
#define IS_ADC_INJECTED_LENGTH(LENGTH)   (((LENGTH) >= 1U) && ((LENGTH) <= 4U))
 
#define IS_ADC_INJECTED_RANK(RANK)   (((RANK) >= 1U) && ((RANK) <= 4U))
 
#define ADC_JSQR(_CHANNELNB_, _RANKNB_, _JSQR_JL_)   (((uint32_t)((uint16_t)(_CHANNELNB_))) << (5U * (uint8_t)(((_RANKNB_) + 3U) - (_JSQR_JL_))))
 Set the selected injected Channel rank. More...
 
#define ADC_COMMON_REGISTER(__HANDLE__)   ADC1_COMMON
 Defines if the selected ADC is within ADC common register ADC123 or ADC1 if available (ADC2, ADC3 availability depends on STM32 product) More...
 

Functions

HAL_StatusTypeDef HAL_ADCEx_InjectedStart (ADC_HandleTypeDef *hadc)
 
HAL_StatusTypeDef HAL_ADCEx_InjectedStop (ADC_HandleTypeDef *hadc)
 
HAL_StatusTypeDef HAL_ADCEx_InjectedPollForConversion (ADC_HandleTypeDef *hadc, uint32_t Timeout)
 
HAL_StatusTypeDef HAL_ADCEx_InjectedStart_IT (ADC_HandleTypeDef *hadc)
 
HAL_StatusTypeDef HAL_ADCEx_InjectedStop_IT (ADC_HandleTypeDef *hadc)
 
uint32_t HAL_ADCEx_InjectedGetValue (ADC_HandleTypeDef *hadc, uint32_t InjectedRank)
 
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)
 
void HAL_ADCEx_InjectedConvCpltCallback (ADC_HandleTypeDef *hadc)
 
HAL_StatusTypeDef HAL_ADCEx_InjectedConfigChannel (ADC_HandleTypeDef *hadc, ADC_InjectionConfTypeDef *sConfigInjected)
 
HAL_StatusTypeDef HAL_ADCEx_MultiModeConfigChannel (ADC_HandleTypeDef *hadc, ADC_MultiModeTypeDef *multimode)
 

Detailed Description

Header file of ADC HAL module.

Author
MCD Application Team
Attention

© COPYRIGHT(c) 2017 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.