fix LPC812 PWM

Dependents:   IR_LED_Send

Fork of mbed-dev by mbed official

Committer:
nameless129
Date:
Mon May 16 16:50:30 2016 +0000
Revision:
129:2e517c56bcfb
Parent:
0:9b334a45a8ff
PWM Fix:Duty 0%??H???????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bogdanm 0:9b334a45a8ff 1 /**
bogdanm 0:9b334a45a8ff 2 ******************************************************************************
bogdanm 0:9b334a45a8ff 3 * @file stm32f0xx_hal_adc_ex.h
bogdanm 0:9b334a45a8ff 4 * @author MCD Application Team
bogdanm 0:9b334a45a8ff 5 * @version V1.3.0
bogdanm 0:9b334a45a8ff 6 * @date 26-June-2015
bogdanm 0:9b334a45a8ff 7 * @brief Header file of ADC HAL Extension module.
bogdanm 0:9b334a45a8ff 8 ******************************************************************************
bogdanm 0:9b334a45a8ff 9 * @attention
bogdanm 0:9b334a45a8ff 10 *
bogdanm 0:9b334a45a8ff 11 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
bogdanm 0:9b334a45a8ff 12 *
bogdanm 0:9b334a45a8ff 13 * Redistribution and use in source and binary forms, with or without modification,
bogdanm 0:9b334a45a8ff 14 * are permitted provided that the following conditions are met:
bogdanm 0:9b334a45a8ff 15 * 1. Redistributions of source code must retain the above copyright notice,
bogdanm 0:9b334a45a8ff 16 * this list of conditions and the following disclaimer.
bogdanm 0:9b334a45a8ff 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
bogdanm 0:9b334a45a8ff 18 * this list of conditions and the following disclaimer in the documentation
bogdanm 0:9b334a45a8ff 19 * and/or other materials provided with the distribution.
bogdanm 0:9b334a45a8ff 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
bogdanm 0:9b334a45a8ff 21 * may be used to endorse or promote products derived from this software
bogdanm 0:9b334a45a8ff 22 * without specific prior written permission.
bogdanm 0:9b334a45a8ff 23 *
bogdanm 0:9b334a45a8ff 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
bogdanm 0:9b334a45a8ff 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
bogdanm 0:9b334a45a8ff 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
bogdanm 0:9b334a45a8ff 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
bogdanm 0:9b334a45a8ff 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
bogdanm 0:9b334a45a8ff 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
bogdanm 0:9b334a45a8ff 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
bogdanm 0:9b334a45a8ff 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
bogdanm 0:9b334a45a8ff 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
bogdanm 0:9b334a45a8ff 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
bogdanm 0:9b334a45a8ff 34 *
bogdanm 0:9b334a45a8ff 35 ******************************************************************************
bogdanm 0:9b334a45a8ff 36 */
bogdanm 0:9b334a45a8ff 37
bogdanm 0:9b334a45a8ff 38 /* Define to prevent recursive inclusion -------------------------------------*/
bogdanm 0:9b334a45a8ff 39 #ifndef __STM32F0xx_HAL_ADC_EX_H
bogdanm 0:9b334a45a8ff 40 #define __STM32F0xx_HAL_ADC_EX_H
bogdanm 0:9b334a45a8ff 41
bogdanm 0:9b334a45a8ff 42 #ifdef __cplusplus
bogdanm 0:9b334a45a8ff 43 extern "C" {
bogdanm 0:9b334a45a8ff 44 #endif
bogdanm 0:9b334a45a8ff 45
bogdanm 0:9b334a45a8ff 46 /* Includes ------------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 47 #include "stm32f0xx_hal_def.h"
bogdanm 0:9b334a45a8ff 48
bogdanm 0:9b334a45a8ff 49 /** @addtogroup STM32F0xx_HAL_Driver
bogdanm 0:9b334a45a8ff 50 * @{
bogdanm 0:9b334a45a8ff 51 */
bogdanm 0:9b334a45a8ff 52
bogdanm 0:9b334a45a8ff 53 /** @addtogroup ADCEx
bogdanm 0:9b334a45a8ff 54 * @{
bogdanm 0:9b334a45a8ff 55 */
bogdanm 0:9b334a45a8ff 56
bogdanm 0:9b334a45a8ff 57 /* Exported types ------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 58 /* Exported constants --------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 59
bogdanm 0:9b334a45a8ff 60 /** @defgroup ADC_Exported_Constants ADC Exported Constants
bogdanm 0:9b334a45a8ff 61 * @{
bogdanm 0:9b334a45a8ff 62 */
bogdanm 0:9b334a45a8ff 63
bogdanm 0:9b334a45a8ff 64 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
bogdanm 0:9b334a45a8ff 65 #define ADC_CCR_ALL (ADC_CCR_VBATEN | ADC_CCR_TSEN | ADC_CCR_VREFEN)
bogdanm 0:9b334a45a8ff 66 #else
bogdanm 0:9b334a45a8ff 67 #define ADC_CCR_ALL (ADC_CCR_TSEN | ADC_CCR_VREFEN)
bogdanm 0:9b334a45a8ff 68 #endif
bogdanm 0:9b334a45a8ff 69
bogdanm 0:9b334a45a8ff 70 /** @defgroup ADC_External_trigger_source_Regular ADC External trigger source Regular
bogdanm 0:9b334a45a8ff 71 * @{
bogdanm 0:9b334a45a8ff 72 */
bogdanm 0:9b334a45a8ff 73 /* List of external triggers with generic trigger name, sorted by trigger */
bogdanm 0:9b334a45a8ff 74 /* name: */
bogdanm 0:9b334a45a8ff 75
bogdanm 0:9b334a45a8ff 76 /* External triggers of regular group for ADC1 */
bogdanm 0:9b334a45a8ff 77 #define ADC_EXTERNALTRIGCONV_T1_TRGO ADC1_2_EXTERNALTRIG_T1_TRGO
bogdanm 0:9b334a45a8ff 78 #define ADC_EXTERNALTRIGCONV_T1_CC4 ADC1_2_EXTERNALTRIG_T1_CC4
bogdanm 0:9b334a45a8ff 79 #define ADC_EXTERNALTRIGCONV_T3_TRGO ADC1_2_EXTERNALTRIG_T3_TRGO
bogdanm 0:9b334a45a8ff 80 #define ADC_SOFTWARE_START (ADC_CFGR1_EXTSEL + (uint32_t)1)
bogdanm 0:9b334a45a8ff 81
bogdanm 0:9b334a45a8ff 82 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
bogdanm 0:9b334a45a8ff 83 #define ADC_EXTERNALTRIGCONV_T2_TRGO ADC1_2_EXTERNALTRIG_T2_TRGO
bogdanm 0:9b334a45a8ff 84 #endif
bogdanm 0:9b334a45a8ff 85
bogdanm 0:9b334a45a8ff 86 #if !defined(STM32F030x6) && !defined(STM32F070x6) && !defined(STM32F042x6)
bogdanm 0:9b334a45a8ff 87 #define ADC_EXTERNALTRIGCONV_T15_TRGO ADC1_2_EXTERNALTRIG_T15_TRGO
bogdanm 0:9b334a45a8ff 88 #endif
bogdanm 0:9b334a45a8ff 89
bogdanm 0:9b334a45a8ff 90 /**
bogdanm 0:9b334a45a8ff 91 * @}
bogdanm 0:9b334a45a8ff 92 */
bogdanm 0:9b334a45a8ff 93
bogdanm 0:9b334a45a8ff 94
bogdanm 0:9b334a45a8ff 95 /** @defgroup ADC_channels ADC channels
bogdanm 0:9b334a45a8ff 96 * @{
bogdanm 0:9b334a45a8ff 97 */
bogdanm 0:9b334a45a8ff 98 /* Note: Depending on devices, some channels may not be available on package */
bogdanm 0:9b334a45a8ff 99 /* pins. Refer to device datasheet for channels availability. */
bogdanm 0:9b334a45a8ff 100 /* Note: Channels are used by bitfields for setting of channel selection */
bogdanm 0:9b334a45a8ff 101 /* (register ADC_CHSELR) and used by number for setting of analog */
bogdanm 0:9b334a45a8ff 102 /* watchdog channel (bits AWDCH in register ADC_CFGR1). */
bogdanm 0:9b334a45a8ff 103 /* Channels are defined with decimal numbers and converted them to */
bogdanm 0:9b334a45a8ff 104 /* bitfields when needed. */
bogdanm 0:9b334a45a8ff 105 #define ADC_CHANNEL_0 ((uint32_t) 0x00000000)
bogdanm 0:9b334a45a8ff 106 #define ADC_CHANNEL_1 ((uint32_t) 0x00000001)
bogdanm 0:9b334a45a8ff 107 #define ADC_CHANNEL_2 ((uint32_t) 0x00000002)
bogdanm 0:9b334a45a8ff 108 #define ADC_CHANNEL_3 ((uint32_t) 0x00000003)
bogdanm 0:9b334a45a8ff 109 #define ADC_CHANNEL_4 ((uint32_t) 0x00000004)
bogdanm 0:9b334a45a8ff 110 #define ADC_CHANNEL_5 ((uint32_t) 0x00000005)
bogdanm 0:9b334a45a8ff 111 #define ADC_CHANNEL_6 ((uint32_t) 0x00000006)
bogdanm 0:9b334a45a8ff 112 #define ADC_CHANNEL_7 ((uint32_t) 0x00000007)
bogdanm 0:9b334a45a8ff 113 #define ADC_CHANNEL_8 ((uint32_t) 0x00000008)
bogdanm 0:9b334a45a8ff 114 #define ADC_CHANNEL_9 ((uint32_t) 0x00000009)
bogdanm 0:9b334a45a8ff 115 #define ADC_CHANNEL_10 ((uint32_t) 0x0000000A)
bogdanm 0:9b334a45a8ff 116 #define ADC_CHANNEL_11 ((uint32_t) 0x0000000B)
bogdanm 0:9b334a45a8ff 117 #define ADC_CHANNEL_12 ((uint32_t) 0x0000000C)
bogdanm 0:9b334a45a8ff 118 #define ADC_CHANNEL_13 ((uint32_t) 0x0000000D)
bogdanm 0:9b334a45a8ff 119 #define ADC_CHANNEL_14 ((uint32_t) 0x0000000E)
bogdanm 0:9b334a45a8ff 120 #define ADC_CHANNEL_15 ((uint32_t) 0x0000000F)
bogdanm 0:9b334a45a8ff 121 #define ADC_CHANNEL_16 ((uint32_t) 0x00000010)
bogdanm 0:9b334a45a8ff 122 #define ADC_CHANNEL_17 ((uint32_t) 0x00000011)
bogdanm 0:9b334a45a8ff 123
bogdanm 0:9b334a45a8ff 124 #define ADC_CHANNEL_TEMPSENSOR ADC_CHANNEL_16
bogdanm 0:9b334a45a8ff 125 #define ADC_CHANNEL_VREFINT ADC_CHANNEL_17
bogdanm 0:9b334a45a8ff 126
bogdanm 0:9b334a45a8ff 127 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
bogdanm 0:9b334a45a8ff 128 #define ADC_CHANNEL_18 ((uint32_t) 0x00000012)
bogdanm 0:9b334a45a8ff 129 #define ADC_CHANNEL_VBAT ADC_CHANNEL_18
bogdanm 0:9b334a45a8ff 130 #endif
bogdanm 0:9b334a45a8ff 131
bogdanm 0:9b334a45a8ff 132 /**
bogdanm 0:9b334a45a8ff 133 * @}
bogdanm 0:9b334a45a8ff 134 */
bogdanm 0:9b334a45a8ff 135
bogdanm 0:9b334a45a8ff 136 /**
bogdanm 0:9b334a45a8ff 137 * @}
bogdanm 0:9b334a45a8ff 138 */
bogdanm 0:9b334a45a8ff 139
bogdanm 0:9b334a45a8ff 140 /* Exported macro ------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 141
bogdanm 0:9b334a45a8ff 142
bogdanm 0:9b334a45a8ff 143 /* Private macros ------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 144
bogdanm 0:9b334a45a8ff 145 /** @defgroup ADCEx_Private_Macros ADCEx Private Macros
bogdanm 0:9b334a45a8ff 146 * @{
bogdanm 0:9b334a45a8ff 147 */
bogdanm 0:9b334a45a8ff 148 /* Macro reserved for internal HAL driver usage, not intended to be used in */
bogdanm 0:9b334a45a8ff 149 /* code of final user. */
bogdanm 0:9b334a45a8ff 150
bogdanm 0:9b334a45a8ff 151 /**
bogdanm 0:9b334a45a8ff 152 * @brief Test if the selected ADC channel is an internal channel
bogdanm 0:9b334a45a8ff 153 * VrefInt/TempSensor/Vbat
bogdanm 0:9b334a45a8ff 154 * Note: On STM32F0, availability of internal channel Vbat depends on
bogdanm 0:9b334a45a8ff 155 * devices lines.
bogdanm 0:9b334a45a8ff 156 * @param __CHANNEL__: ADC channel
bogdanm 0:9b334a45a8ff 157 * @retval None
bogdanm 0:9b334a45a8ff 158 */
bogdanm 0:9b334a45a8ff 159 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
bogdanm 0:9b334a45a8ff 160 #define ADC_IS_CHANNEL_INTERNAL(__CHANNEL__) \
bogdanm 0:9b334a45a8ff 161 (((__CHANNEL__) == ADC_CHANNEL_TEMPSENSOR) || \
bogdanm 0:9b334a45a8ff 162 ((__CHANNEL__) == ADC_CHANNEL_VREFINT) || \
bogdanm 0:9b334a45a8ff 163 ((__CHANNEL__) == ADC_CHANNEL_VBAT) \
bogdanm 0:9b334a45a8ff 164 )
bogdanm 0:9b334a45a8ff 165 #else
bogdanm 0:9b334a45a8ff 166 #define ADC_IS_CHANNEL_INTERNAL(__CHANNEL__) \
bogdanm 0:9b334a45a8ff 167 (((__CHANNEL__) == ADC_CHANNEL_TEMPSENSOR) || \
bogdanm 0:9b334a45a8ff 168 ((__CHANNEL__) == ADC_CHANNEL_VREFINT) \
bogdanm 0:9b334a45a8ff 169 )
bogdanm 0:9b334a45a8ff 170 #endif
bogdanm 0:9b334a45a8ff 171
bogdanm 0:9b334a45a8ff 172 /**
bogdanm 0:9b334a45a8ff 173 * @brief Select the internal measurement path to be enabled/disabled
bogdanm 0:9b334a45a8ff 174 * corresponding to the selected ADC internal channel
bogdanm 0:9b334a45a8ff 175 * VrefInt/TempSensor/Vbat.
bogdanm 0:9b334a45a8ff 176 * Note: On STM32F0, availability of internal channel Vbat depends on
bogdanm 0:9b334a45a8ff 177 * devices lines.
bogdanm 0:9b334a45a8ff 178 * @param __CHANNEL__: ADC channel
bogdanm 0:9b334a45a8ff 179 * @retval Bit of register ADC_CCR
bogdanm 0:9b334a45a8ff 180 */
bogdanm 0:9b334a45a8ff 181 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
bogdanm 0:9b334a45a8ff 182 #define ADC_CHANNEL_INTERNAL_PATH(__CHANNEL__) \
bogdanm 0:9b334a45a8ff 183 (( (__CHANNEL__) == ADC_CHANNEL_TEMPSENSOR \
bogdanm 0:9b334a45a8ff 184 )? \
bogdanm 0:9b334a45a8ff 185 (ADC_CCR_TSEN) \
bogdanm 0:9b334a45a8ff 186 : \
bogdanm 0:9b334a45a8ff 187 ( \
bogdanm 0:9b334a45a8ff 188 ( (__CHANNEL__) == ADC_CHANNEL_VREFINT \
bogdanm 0:9b334a45a8ff 189 )? \
bogdanm 0:9b334a45a8ff 190 (ADC_CCR_VREFEN) \
bogdanm 0:9b334a45a8ff 191 : \
bogdanm 0:9b334a45a8ff 192 (ADC_CCR_VBATEN) \
bogdanm 0:9b334a45a8ff 193 ) \
bogdanm 0:9b334a45a8ff 194 )
bogdanm 0:9b334a45a8ff 195 #else
bogdanm 0:9b334a45a8ff 196 #define ADC_CHANNEL_INTERNAL_PATH(__CHANNEL__) \
bogdanm 0:9b334a45a8ff 197 (( (__CHANNEL__) == ADC_CHANNEL_TEMPSENSOR \
bogdanm 0:9b334a45a8ff 198 )? \
bogdanm 0:9b334a45a8ff 199 (ADC_CCR_TSEN) \
bogdanm 0:9b334a45a8ff 200 : \
bogdanm 0:9b334a45a8ff 201 (ADC_CHANNEL_VREFINT) \
bogdanm 0:9b334a45a8ff 202 )
bogdanm 0:9b334a45a8ff 203 #endif
bogdanm 0:9b334a45a8ff 204
bogdanm 0:9b334a45a8ff 205
bogdanm 0:9b334a45a8ff 206 #if defined (STM32F030x6) || defined (STM32F070x6)
bogdanm 0:9b334a45a8ff 207 #define IS_ADC_EXTTRIG(REGTRIG) (((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_TRGO) || \
bogdanm 0:9b334a45a8ff 208 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_CC4) || \
bogdanm 0:9b334a45a8ff 209 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T3_TRGO) || \
bogdanm 0:9b334a45a8ff 210 ((REGTRIG) == ADC_SOFTWARE_START))
bogdanm 0:9b334a45a8ff 211 #elif defined (STM32F042x6)
bogdanm 0:9b334a45a8ff 212 #define IS_ADC_EXTTRIG(REGTRIG) (((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_TRGO) || \
bogdanm 0:9b334a45a8ff 213 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_CC4) || \
bogdanm 0:9b334a45a8ff 214 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T2_TRGO) || \
bogdanm 0:9b334a45a8ff 215 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T3_TRGO) || \
bogdanm 0:9b334a45a8ff 216 ((REGTRIG) == ADC_SOFTWARE_START))
bogdanm 0:9b334a45a8ff 217
bogdanm 0:9b334a45a8ff 218 #elif defined (STM32F030xC) || defined (STM32F070xB) || defined (STM32F030x8)
bogdanm 0:9b334a45a8ff 219 #define IS_ADC_EXTTRIG(REGTRIG) (((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_TRGO) || \
bogdanm 0:9b334a45a8ff 220 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_CC4) || \
bogdanm 0:9b334a45a8ff 221 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T3_TRGO) || \
bogdanm 0:9b334a45a8ff 222 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T15_TRGO) || \
bogdanm 0:9b334a45a8ff 223 ((REGTRIG) == ADC_SOFTWARE_START))
bogdanm 0:9b334a45a8ff 224 #else
bogdanm 0:9b334a45a8ff 225 #define IS_ADC_EXTTRIG(REGTRIG) (((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_TRGO) || \
bogdanm 0:9b334a45a8ff 226 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T1_CC4) || \
bogdanm 0:9b334a45a8ff 227 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T2_TRGO) || \
bogdanm 0:9b334a45a8ff 228 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T3_TRGO) || \
bogdanm 0:9b334a45a8ff 229 ((REGTRIG) == ADC_EXTERNALTRIGCONV_T15_TRGO) || \
bogdanm 0:9b334a45a8ff 230 ((REGTRIG) == ADC_SOFTWARE_START))
bogdanm 0:9b334a45a8ff 231 #endif
bogdanm 0:9b334a45a8ff 232
bogdanm 0:9b334a45a8ff 233 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
bogdanm 0:9b334a45a8ff 234 #define IS_ADC_CHANNEL(CHANNEL) (((CHANNEL) == ADC_CHANNEL_0) || \
bogdanm 0:9b334a45a8ff 235 ((CHANNEL) == ADC_CHANNEL_1) || \
bogdanm 0:9b334a45a8ff 236 ((CHANNEL) == ADC_CHANNEL_2) || \
bogdanm 0:9b334a45a8ff 237 ((CHANNEL) == ADC_CHANNEL_3) || \
bogdanm 0:9b334a45a8ff 238 ((CHANNEL) == ADC_CHANNEL_4) || \
bogdanm 0:9b334a45a8ff 239 ((CHANNEL) == ADC_CHANNEL_5) || \
bogdanm 0:9b334a45a8ff 240 ((CHANNEL) == ADC_CHANNEL_6) || \
bogdanm 0:9b334a45a8ff 241 ((CHANNEL) == ADC_CHANNEL_7) || \
bogdanm 0:9b334a45a8ff 242 ((CHANNEL) == ADC_CHANNEL_8) || \
bogdanm 0:9b334a45a8ff 243 ((CHANNEL) == ADC_CHANNEL_9) || \
bogdanm 0:9b334a45a8ff 244 ((CHANNEL) == ADC_CHANNEL_10) || \
bogdanm 0:9b334a45a8ff 245 ((CHANNEL) == ADC_CHANNEL_11) || \
bogdanm 0:9b334a45a8ff 246 ((CHANNEL) == ADC_CHANNEL_12) || \
bogdanm 0:9b334a45a8ff 247 ((CHANNEL) == ADC_CHANNEL_13) || \
bogdanm 0:9b334a45a8ff 248 ((CHANNEL) == ADC_CHANNEL_14) || \
bogdanm 0:9b334a45a8ff 249 ((CHANNEL) == ADC_CHANNEL_15) || \
bogdanm 0:9b334a45a8ff 250 ((CHANNEL) == ADC_CHANNEL_TEMPSENSOR) || \
bogdanm 0:9b334a45a8ff 251 ((CHANNEL) == ADC_CHANNEL_VREFINT) || \
bogdanm 0:9b334a45a8ff 252 ((CHANNEL) == ADC_CHANNEL_VBAT) )
bogdanm 0:9b334a45a8ff 253 #else
bogdanm 0:9b334a45a8ff 254 #define IS_ADC_CHANNEL(CHANNEL) (((CHANNEL) == ADC_CHANNEL_0) || \
bogdanm 0:9b334a45a8ff 255 ((CHANNEL) == ADC_CHANNEL_1) || \
bogdanm 0:9b334a45a8ff 256 ((CHANNEL) == ADC_CHANNEL_2) || \
bogdanm 0:9b334a45a8ff 257 ((CHANNEL) == ADC_CHANNEL_3) || \
bogdanm 0:9b334a45a8ff 258 ((CHANNEL) == ADC_CHANNEL_4) || \
bogdanm 0:9b334a45a8ff 259 ((CHANNEL) == ADC_CHANNEL_5) || \
bogdanm 0:9b334a45a8ff 260 ((CHANNEL) == ADC_CHANNEL_6) || \
bogdanm 0:9b334a45a8ff 261 ((CHANNEL) == ADC_CHANNEL_7) || \
bogdanm 0:9b334a45a8ff 262 ((CHANNEL) == ADC_CHANNEL_8) || \
bogdanm 0:9b334a45a8ff 263 ((CHANNEL) == ADC_CHANNEL_9) || \
bogdanm 0:9b334a45a8ff 264 ((CHANNEL) == ADC_CHANNEL_10) || \
bogdanm 0:9b334a45a8ff 265 ((CHANNEL) == ADC_CHANNEL_11) || \
bogdanm 0:9b334a45a8ff 266 ((CHANNEL) == ADC_CHANNEL_12) || \
bogdanm 0:9b334a45a8ff 267 ((CHANNEL) == ADC_CHANNEL_13) || \
bogdanm 0:9b334a45a8ff 268 ((CHANNEL) == ADC_CHANNEL_14) || \
bogdanm 0:9b334a45a8ff 269 ((CHANNEL) == ADC_CHANNEL_15) || \
bogdanm 0:9b334a45a8ff 270 ((CHANNEL) == ADC_CHANNEL_TEMPSENSOR) || \
bogdanm 0:9b334a45a8ff 271 ((CHANNEL) == ADC_CHANNEL_VREFINT) )
bogdanm 0:9b334a45a8ff 272 #endif
bogdanm 0:9b334a45a8ff 273
bogdanm 0:9b334a45a8ff 274 /**
bogdanm 0:9b334a45a8ff 275 * @}
bogdanm 0:9b334a45a8ff 276 */
bogdanm 0:9b334a45a8ff 277
bogdanm 0:9b334a45a8ff 278
bogdanm 0:9b334a45a8ff 279 /* Exported functions --------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 280 /** @addtogroup ADCEx_Exported_Functions
bogdanm 0:9b334a45a8ff 281 * @{
bogdanm 0:9b334a45a8ff 282 */
bogdanm 0:9b334a45a8ff 283
bogdanm 0:9b334a45a8ff 284 /* IO operation functions *****************************************************/
bogdanm 0:9b334a45a8ff 285 /** @addtogroup ADCEx_Exported_Functions_Group1
bogdanm 0:9b334a45a8ff 286 * @{
bogdanm 0:9b334a45a8ff 287 */
bogdanm 0:9b334a45a8ff 288
bogdanm 0:9b334a45a8ff 289 /* ADC calibration */
bogdanm 0:9b334a45a8ff 290 HAL_StatusTypeDef HAL_ADCEx_Calibration_Start(ADC_HandleTypeDef* hadc);
bogdanm 0:9b334a45a8ff 291 /**
bogdanm 0:9b334a45a8ff 292 * @}
bogdanm 0:9b334a45a8ff 293 */
bogdanm 0:9b334a45a8ff 294
bogdanm 0:9b334a45a8ff 295
bogdanm 0:9b334a45a8ff 296 /**
bogdanm 0:9b334a45a8ff 297 * @}
bogdanm 0:9b334a45a8ff 298 */
bogdanm 0:9b334a45a8ff 299
bogdanm 0:9b334a45a8ff 300
bogdanm 0:9b334a45a8ff 301 /**
bogdanm 0:9b334a45a8ff 302 * @}
bogdanm 0:9b334a45a8ff 303 */
bogdanm 0:9b334a45a8ff 304
bogdanm 0:9b334a45a8ff 305 /**
bogdanm 0:9b334a45a8ff 306 * @}
bogdanm 0:9b334a45a8ff 307 */
bogdanm 0:9b334a45a8ff 308
bogdanm 0:9b334a45a8ff 309 #ifdef __cplusplus
bogdanm 0:9b334a45a8ff 310 }
bogdanm 0:9b334a45a8ff 311 #endif
bogdanm 0:9b334a45a8ff 312
bogdanm 0:9b334a45a8ff 313 #endif /* __STM32F0xx_HAL_ADC_EX_H */
bogdanm 0:9b334a45a8ff 314
bogdanm 0:9b334a45a8ff 315
bogdanm 0:9b334a45a8ff 316 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
bogdanm 0:9b334a45a8ff 317