STM32F1 Standard Peripheral bibliotheek  1.0
ST Microelectronics bibliotheek documentatie voor de STM32F1 Standard Peripheral Library
 All Data Structures Files Functions Variables Enumerations Groups
stm32f10x_adc.h File Reference

This file contains all the functions prototypes for the ADC firmware library. More...

#include "stm32f10x.h"

Go to the source code of this file.

Data Structures

struct  ADC_InitTypeDef
 ADC Init structure definition. More...
 

Macros

#define IS_ADC_ALL_PERIPH(PERIPH)
 
#define IS_ADC_DMA_PERIPH(PERIPH)
 
#define ADC_Mode_Independent   ((uint32_t)0x00000000)
 
#define ADC_Mode_RegInjecSimult   ((uint32_t)0x00010000)
 
#define ADC_Mode_RegSimult_AlterTrig   ((uint32_t)0x00020000)
 
#define ADC_Mode_InjecSimult_FastInterl   ((uint32_t)0x00030000)
 
#define ADC_Mode_InjecSimult_SlowInterl   ((uint32_t)0x00040000)
 
#define ADC_Mode_InjecSimult   ((uint32_t)0x00050000)
 
#define ADC_Mode_RegSimult   ((uint32_t)0x00060000)
 
#define ADC_Mode_FastInterl   ((uint32_t)0x00070000)
 
#define ADC_Mode_SlowInterl   ((uint32_t)0x00080000)
 
#define ADC_Mode_AlterTrig   ((uint32_t)0x00090000)
 
#define IS_ADC_MODE(MODE)
 
#define ADC_ExternalTrigConv_T1_CC1   ((uint32_t)0x00000000)
 
#define ADC_ExternalTrigConv_T1_CC2   ((uint32_t)0x00020000)
 
#define ADC_ExternalTrigConv_T2_CC2   ((uint32_t)0x00060000)
 
#define ADC_ExternalTrigConv_T3_TRGO   ((uint32_t)0x00080000)
 
#define ADC_ExternalTrigConv_T4_CC4   ((uint32_t)0x000A0000)
 
#define ADC_ExternalTrigConv_Ext_IT11_TIM8_TRGO   ((uint32_t)0x000C0000)
 
#define ADC_ExternalTrigConv_T1_CC3   ((uint32_t)0x00040000)
 
#define ADC_ExternalTrigConv_None   ((uint32_t)0x000E0000)
 
#define ADC_ExternalTrigConv_T3_CC1   ((uint32_t)0x00000000)
 
#define ADC_ExternalTrigConv_T2_CC3   ((uint32_t)0x00020000)
 
#define ADC_ExternalTrigConv_T8_CC1   ((uint32_t)0x00060000)
 
#define ADC_ExternalTrigConv_T8_TRGO   ((uint32_t)0x00080000)
 
#define ADC_ExternalTrigConv_T5_CC1   ((uint32_t)0x000A0000)
 
#define ADC_ExternalTrigConv_T5_CC3   ((uint32_t)0x000C0000)
 
#define IS_ADC_EXT_TRIG(REGTRIG)
 
#define ADC_DataAlign_Right   ((uint32_t)0x00000000)
 
#define ADC_DataAlign_Left   ((uint32_t)0x00000800)
 
#define IS_ADC_DATA_ALIGN(ALIGN)
 
#define ADC_Channel_0   ((uint8_t)0x00)
 
#define ADC_Channel_1   ((uint8_t)0x01)
 
#define ADC_Channel_2   ((uint8_t)0x02)
 
#define ADC_Channel_3   ((uint8_t)0x03)
 
#define ADC_Channel_4   ((uint8_t)0x04)
 
#define ADC_Channel_5   ((uint8_t)0x05)
 
#define ADC_Channel_6   ((uint8_t)0x06)
 
#define ADC_Channel_7   ((uint8_t)0x07)
 
#define ADC_Channel_8   ((uint8_t)0x08)
 
#define ADC_Channel_9   ((uint8_t)0x09)
 
#define ADC_Channel_10   ((uint8_t)0x0A)
 
#define ADC_Channel_11   ((uint8_t)0x0B)
 
#define ADC_Channel_12   ((uint8_t)0x0C)
 
#define ADC_Channel_13   ((uint8_t)0x0D)
 
#define ADC_Channel_14   ((uint8_t)0x0E)
 
#define ADC_Channel_15   ((uint8_t)0x0F)
 
#define ADC_Channel_16   ((uint8_t)0x10)
 
#define ADC_Channel_17   ((uint8_t)0x11)
 
#define ADC_Channel_TempSensor   ((uint8_t)ADC_Channel_16)
 
#define ADC_Channel_Vrefint   ((uint8_t)ADC_Channel_17)
 
#define IS_ADC_CHANNEL(CHANNEL)
 
#define ADC_SampleTime_1Cycles5   ((uint8_t)0x00)
 
#define ADC_SampleTime_7Cycles5   ((uint8_t)0x01)
 
#define ADC_SampleTime_13Cycles5   ((uint8_t)0x02)
 
#define ADC_SampleTime_28Cycles5   ((uint8_t)0x03)
 
#define ADC_SampleTime_41Cycles5   ((uint8_t)0x04)
 
#define ADC_SampleTime_55Cycles5   ((uint8_t)0x05)
 
#define ADC_SampleTime_71Cycles5   ((uint8_t)0x06)
 
#define ADC_SampleTime_239Cycles5   ((uint8_t)0x07)
 
#define IS_ADC_SAMPLE_TIME(TIME)
 
#define ADC_ExternalTrigInjecConv_T2_TRGO   ((uint32_t)0x00002000)
 
#define ADC_ExternalTrigInjecConv_T2_CC1   ((uint32_t)0x00003000)
 
#define ADC_ExternalTrigInjecConv_T3_CC4   ((uint32_t)0x00004000)
 
#define ADC_ExternalTrigInjecConv_T4_TRGO   ((uint32_t)0x00005000)
 
#define ADC_ExternalTrigInjecConv_Ext_IT15_TIM8_CC4   ((uint32_t)0x00006000)
 
#define ADC_ExternalTrigInjecConv_T1_TRGO   ((uint32_t)0x00000000)
 
#define ADC_ExternalTrigInjecConv_T1_CC4   ((uint32_t)0x00001000)
 
#define ADC_ExternalTrigInjecConv_None   ((uint32_t)0x00007000)
 
#define ADC_ExternalTrigInjecConv_T4_CC3   ((uint32_t)0x00002000)
 
#define ADC_ExternalTrigInjecConv_T8_CC2   ((uint32_t)0x00003000)
 
#define ADC_ExternalTrigInjecConv_T8_CC4   ((uint32_t)0x00004000)
 
#define ADC_ExternalTrigInjecConv_T5_TRGO   ((uint32_t)0x00005000)
 
#define ADC_ExternalTrigInjecConv_T5_CC4   ((uint32_t)0x00006000)
 
#define IS_ADC_EXT_INJEC_TRIG(INJTRIG)
 
#define ADC_InjectedChannel_1   ((uint8_t)0x14)
 
#define ADC_InjectedChannel_2   ((uint8_t)0x18)
 
#define ADC_InjectedChannel_3   ((uint8_t)0x1C)
 
#define ADC_InjectedChannel_4   ((uint8_t)0x20)
 
#define IS_ADC_INJECTED_CHANNEL(CHANNEL)
 
#define ADC_AnalogWatchdog_SingleRegEnable   ((uint32_t)0x00800200)
 
#define ADC_AnalogWatchdog_SingleInjecEnable   ((uint32_t)0x00400200)
 
#define ADC_AnalogWatchdog_SingleRegOrInjecEnable   ((uint32_t)0x00C00200)
 
#define ADC_AnalogWatchdog_AllRegEnable   ((uint32_t)0x00800000)
 
#define ADC_AnalogWatchdog_AllInjecEnable   ((uint32_t)0x00400000)
 
#define ADC_AnalogWatchdog_AllRegAllInjecEnable   ((uint32_t)0x00C00000)
 
#define ADC_AnalogWatchdog_None   ((uint32_t)0x00000000)
 
#define IS_ADC_ANALOG_WATCHDOG(WATCHDOG)
 
#define ADC_IT_EOC   ((uint16_t)0x0220)
 
#define ADC_IT_AWD   ((uint16_t)0x0140)
 
#define ADC_IT_JEOC   ((uint16_t)0x0480)
 
#define IS_ADC_IT(IT)   ((((IT) & (uint16_t)0xF81F) == 0x00) && ((IT) != 0x00))
 
#define IS_ADC_GET_IT(IT)
 
#define ADC_FLAG_AWD   ((uint8_t)0x01)
 
#define ADC_FLAG_EOC   ((uint8_t)0x02)
 
#define ADC_FLAG_JEOC   ((uint8_t)0x04)
 
#define ADC_FLAG_JSTRT   ((uint8_t)0x08)
 
#define ADC_FLAG_STRT   ((uint8_t)0x10)
 
#define IS_ADC_CLEAR_FLAG(FLAG)   ((((FLAG) & (uint8_t)0xE0) == 0x00) && ((FLAG) != 0x00))
 
#define IS_ADC_GET_FLAG(FLAG)
 
#define IS_ADC_THRESHOLD(THRESHOLD)   ((THRESHOLD) <= 0xFFF)
 
#define IS_ADC_OFFSET(OFFSET)   ((OFFSET) <= 0xFFF)
 
#define IS_ADC_INJECTED_LENGTH(LENGTH)   (((LENGTH) >= 0x1) && ((LENGTH) <= 0x4))
 
#define IS_ADC_INJECTED_RANK(RANK)   (((RANK) >= 0x1) && ((RANK) <= 0x4))
 
#define IS_ADC_REGULAR_LENGTH(LENGTH)   (((LENGTH) >= 0x1) && ((LENGTH) <= 0x10))
 
#define IS_ADC_REGULAR_RANK(RANK)   (((RANK) >= 0x1) && ((RANK) <= 0x10))
 
#define IS_ADC_REGULAR_DISC_NUMBER(NUMBER)   (((NUMBER) >= 0x1) && ((NUMBER) <= 0x8))
 

Functions

void ADC_DeInit (ADC_TypeDef *ADCx)
 Deinitializes the ADCx peripheral registers to their default reset values. More...
 
void ADC_Init (ADC_TypeDef *ADCx, ADC_InitTypeDef *ADC_InitStruct)
 Initializes the ADCx peripheral according to the specified parameters in the ADC_InitStruct. More...
 
void ADC_StructInit (ADC_InitTypeDef *ADC_InitStruct)
 Fills each ADC_InitStruct member with its default value. More...
 
void ADC_Cmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the specified ADC peripheral. More...
 
void ADC_DMACmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the specified ADC DMA request. More...
 
void ADC_ITConfig (ADC_TypeDef *ADCx, uint16_t ADC_IT, FunctionalState NewState)
 Enables or disables the specified ADC interrupts. More...
 
void ADC_ResetCalibration (ADC_TypeDef *ADCx)
 Resets the selected ADC calibration registers. More...
 
FlagStatus ADC_GetResetCalibrationStatus (ADC_TypeDef *ADCx)
 Gets the selected ADC reset calibration registers status. More...
 
void ADC_StartCalibration (ADC_TypeDef *ADCx)
 Starts the selected ADC calibration process. More...
 
FlagStatus ADC_GetCalibrationStatus (ADC_TypeDef *ADCx)
 Gets the selected ADC calibration status. More...
 
void ADC_SoftwareStartConvCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the selected ADC software start conversion . More...
 
FlagStatus ADC_GetSoftwareStartConvStatus (ADC_TypeDef *ADCx)
 Gets the selected ADC Software start conversion Status. More...
 
void ADC_DiscModeChannelCountConfig (ADC_TypeDef *ADCx, uint8_t Number)
 Configures the discontinuous mode for the selected ADC regular group channel. More...
 
void ADC_DiscModeCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the discontinuous mode on regular group channel for the specified ADC. More...
 
void ADC_RegularChannelConfig (ADC_TypeDef *ADCx, uint8_t ADC_Channel, uint8_t Rank, uint8_t ADC_SampleTime)
 Configures for the selected ADC regular channel its corresponding rank in the sequencer and its sample time. More...
 
void ADC_ExternalTrigConvCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the ADCx conversion through external trigger. More...
 
uint16_t ADC_GetConversionValue (ADC_TypeDef *ADCx)
 Returns the last ADCx conversion result data for regular channel. More...
 
uint32_t ADC_GetDualModeConversionValue (void)
 Returns the last ADC1 and ADC2 conversion result data in dual mode. More...
 
void ADC_AutoInjectedConvCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the selected ADC automatic injected group conversion after regular one. More...
 
void ADC_InjectedDiscModeCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the discontinuous mode for injected group channel for the specified ADC. More...
 
void ADC_ExternalTrigInjectedConvConfig (ADC_TypeDef *ADCx, uint32_t ADC_ExternalTrigInjecConv)
 Configures the ADCx external trigger for injected channels conversion. More...
 
void ADC_ExternalTrigInjectedConvCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the ADCx injected channels conversion through external trigger. More...
 
void ADC_SoftwareStartInjectedConvCmd (ADC_TypeDef *ADCx, FunctionalState NewState)
 Enables or disables the selected ADC start of the injected channels conversion. More...
 
FlagStatus ADC_GetSoftwareStartInjectedConvCmdStatus (ADC_TypeDef *ADCx)
 Gets the selected ADC Software start injected conversion Status. More...
 
void ADC_InjectedChannelConfig (ADC_TypeDef *ADCx, uint8_t ADC_Channel, uint8_t Rank, uint8_t ADC_SampleTime)
 Configures for the selected ADC injected channel its corresponding rank in the sequencer and its sample time. More...
 
void ADC_InjectedSequencerLengthConfig (ADC_TypeDef *ADCx, uint8_t Length)
 Configures the sequencer length for injected channels. More...
 
void ADC_SetInjectedOffset (ADC_TypeDef *ADCx, uint8_t ADC_InjectedChannel, uint16_t Offset)
 Set the injected channels conversion value offset. More...
 
uint16_t ADC_GetInjectedConversionValue (ADC_TypeDef *ADCx, uint8_t ADC_InjectedChannel)
 Returns the ADC injected channel conversion result. More...
 
void ADC_AnalogWatchdogCmd (ADC_TypeDef *ADCx, uint32_t ADC_AnalogWatchdog)
 Enables or disables the analog watchdog on single/all regular or injected channels. More...
 
void ADC_AnalogWatchdogThresholdsConfig (ADC_TypeDef *ADCx, uint16_t HighThreshold, uint16_t LowThreshold)
 Configures the high and low thresholds of the analog watchdog. More...
 
void ADC_AnalogWatchdogSingleChannelConfig (ADC_TypeDef *ADCx, uint8_t ADC_Channel)
 Configures the analog watchdog guarded single channel. More...
 
void ADC_TempSensorVrefintCmd (FunctionalState NewState)
 Enables or disables the temperature sensor and Vrefint channel. More...
 
FlagStatus ADC_GetFlagStatus (ADC_TypeDef *ADCx, uint8_t ADC_FLAG)
 Checks whether the specified ADC flag is set or not. More...
 
void ADC_ClearFlag (ADC_TypeDef *ADCx, uint8_t ADC_FLAG)
 Clears the ADCx's pending flags. More...
 
ITStatus ADC_GetITStatus (ADC_TypeDef *ADCx, uint16_t ADC_IT)
 Checks whether the specified ADC interrupt has occurred or not. More...
 
void ADC_ClearITPendingBit (ADC_TypeDef *ADCx, uint16_t ADC_IT)
 Clears the ADCx’s interrupt pending bits. More...
 

Detailed Description

This file contains all the functions prototypes for the ADC firmware library.

Author
MCD Application Team
Version
V3.3.0
Date
04/16/2010

THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.

© COPYRIGHT 2010 STMicroelectronics