mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Committer:
mbed_official
Date:
Wed Jul 01 09:45:11 2015 +0100
Revision:
579:53297373a894
Parent:
394:83f921546702
Synchronized with git revision d5b4d2ab9c47edb4dc5776e7177b0c2263459081

Full URL: https://github.com/mbedmicro/mbed/commit/d5b4d2ab9c47edb4dc5776e7177b0c2263459081/

Initial version of drivers for SAMR21

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 354:e67efb2aab0e 1 /**
mbed_official 354:e67efb2aab0e 2 ******************************************************************************
mbed_official 354:e67efb2aab0e 3 * @file stm32l1xx_hal_opamp.h
mbed_official 354:e67efb2aab0e 4 * @author MCD Application Team
mbed_official 354:e67efb2aab0e 5 * @version V1.0.0
mbed_official 354:e67efb2aab0e 6 * @date 5-September-2014
mbed_official 354:e67efb2aab0e 7 * @brief Header file of OPAMP HAL module.
mbed_official 354:e67efb2aab0e 8 ******************************************************************************
mbed_official 354:e67efb2aab0e 9 * @attention
mbed_official 354:e67efb2aab0e 10 *
mbed_official 354:e67efb2aab0e 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 354:e67efb2aab0e 12 *
mbed_official 354:e67efb2aab0e 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 354:e67efb2aab0e 14 * are permitted provided that the following conditions are met:
mbed_official 354:e67efb2aab0e 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 354:e67efb2aab0e 16 * this list of conditions and the following disclaimer.
mbed_official 354:e67efb2aab0e 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 354:e67efb2aab0e 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 354:e67efb2aab0e 19 * and/or other materials provided with the distribution.
mbed_official 354:e67efb2aab0e 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 354:e67efb2aab0e 21 * may be used to endorse or promote products derived from this software
mbed_official 354:e67efb2aab0e 22 * without specific prior written permission.
mbed_official 354:e67efb2aab0e 23 *
mbed_official 354:e67efb2aab0e 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 354:e67efb2aab0e 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 354:e67efb2aab0e 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 354:e67efb2aab0e 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 354:e67efb2aab0e 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 354:e67efb2aab0e 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 354:e67efb2aab0e 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 354:e67efb2aab0e 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 354:e67efb2aab0e 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 354:e67efb2aab0e 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 354:e67efb2aab0e 34 *
mbed_official 354:e67efb2aab0e 35 ******************************************************************************
mbed_official 354:e67efb2aab0e 36 */
mbed_official 354:e67efb2aab0e 37
mbed_official 354:e67efb2aab0e 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 354:e67efb2aab0e 39 #ifndef __STM32L1xx_HAL_OPAMP_H
mbed_official 354:e67efb2aab0e 40 #define __STM32L1xx_HAL_OPAMP_H
mbed_official 354:e67efb2aab0e 41
mbed_official 354:e67efb2aab0e 42 #ifdef __cplusplus
mbed_official 354:e67efb2aab0e 43 extern "C" {
mbed_official 354:e67efb2aab0e 44 #endif
mbed_official 354:e67efb2aab0e 45
mbed_official 354:e67efb2aab0e 46 #if defined (STM32L151xCA) || defined (STM32L151xD) || defined (STM32L152xCA) || defined (STM32L152xD) || defined (STM32L162xCA) || defined (STM32L162xD) || defined (STM32L151xE) || defined (STM32L152xE) || defined (STM32L162xE) || defined (STM32L162xC) || defined (STM32L152xC) || defined (STM32L151xC)
mbed_official 354:e67efb2aab0e 47
mbed_official 354:e67efb2aab0e 48 /* Includes ------------------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 49 #include "stm32l1xx_hal_def.h"
mbed_official 354:e67efb2aab0e 50
mbed_official 354:e67efb2aab0e 51 /** @addtogroup STM32L1xx_HAL_Driver
mbed_official 354:e67efb2aab0e 52 * @{
mbed_official 354:e67efb2aab0e 53 */
mbed_official 354:e67efb2aab0e 54
mbed_official 354:e67efb2aab0e 55 /** @addtogroup OPAMP
mbed_official 354:e67efb2aab0e 56 * @{
mbed_official 354:e67efb2aab0e 57 */
mbed_official 354:e67efb2aab0e 58
mbed_official 354:e67efb2aab0e 59 /* Exported types ------------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 60
mbed_official 354:e67efb2aab0e 61 /** @defgroup OPAMP_Exported_Types OPAMP Exported Types
mbed_official 354:e67efb2aab0e 62 * @{
mbed_official 354:e67efb2aab0e 63 */
mbed_official 354:e67efb2aab0e 64 /**
mbed_official 354:e67efb2aab0e 65 * @brief OPAMP Init structure definition
mbed_official 354:e67efb2aab0e 66 */
mbed_official 354:e67efb2aab0e 67
mbed_official 354:e67efb2aab0e 68 typedef struct
mbed_official 354:e67efb2aab0e 69 {
mbed_official 354:e67efb2aab0e 70 uint32_t PowerSupplyRange; /*!< Specifies the power supply range: above or under 2.4V.
mbed_official 354:e67efb2aab0e 71 This parameter must be a value of @ref OPAMP_PowerSupplyRange
mbed_official 354:e67efb2aab0e 72 Caution: This parameter is common to all OPAMP instances: a modification of this parameter for the selected OPAMP impacts the other OPAMP instances. */
mbed_official 354:e67efb2aab0e 73
mbed_official 354:e67efb2aab0e 74 uint32_t UserTrimming; /*!< Specifies the trimming mode
mbed_official 354:e67efb2aab0e 75 This parameter must be a value of @ref OPAMP_UserTrimming
mbed_official 354:e67efb2aab0e 76 UserTrimming is either factory or user trimming.
mbed_official 354:e67efb2aab0e 77 Caution: This parameter is common to all OPAMP instances: a modification of this parameter for the selected OPAMP impacts the other OPAMP instances. */
mbed_official 354:e67efb2aab0e 78
mbed_official 354:e67efb2aab0e 79 uint32_t Mode; /*!< Specifies the OPAMP mode
mbed_official 354:e67efb2aab0e 80 This parameter must be a value of @ref OPAMP_Mode
mbed_official 354:e67efb2aab0e 81 mode is either Standalone or Follower */
mbed_official 354:e67efb2aab0e 82
mbed_official 354:e67efb2aab0e 83 uint32_t InvertingInput; /*!< Specifies the inverting input in Standalone mode
mbed_official 354:e67efb2aab0e 84 - In Standalone mode: i.e when mode is OPAMP_STANDALONE_MODE
mbed_official 354:e67efb2aab0e 85 This parameter must be a value of @ref OPAMP_InvertingInput
mbed_official 354:e67efb2aab0e 86 InvertingInput is either VM0 or VM1
mbed_official 354:e67efb2aab0e 87 - In Follower mode: i.e when mode is OPAMP_FOLLOWER_MODE
mbed_official 354:e67efb2aab0e 88 This parameter is Not Applicable */
mbed_official 354:e67efb2aab0e 89
mbed_official 354:e67efb2aab0e 90 uint32_t NonInvertingInput; /*!< Specifies the non inverting input of the opamp:
mbed_official 354:e67efb2aab0e 91 This parameter must be a value of @ref OPAMP_NonInvertingInput
mbed_official 354:e67efb2aab0e 92 NonInvertingInput is either VP0, VP1 or VP2 */
mbed_official 354:e67efb2aab0e 93
mbed_official 354:e67efb2aab0e 94 uint32_t PowerMode; /*!< Specifies the power mode Normal or Low-Power.
mbed_official 354:e67efb2aab0e 95 This parameter must be a value of @ref OPAMP_PowerMode */
mbed_official 354:e67efb2aab0e 96
mbed_official 354:e67efb2aab0e 97 uint32_t TrimmingValueP; /*!< Specifies the offset trimming value (PMOS)
mbed_official 354:e67efb2aab0e 98 i.e. when UserTrimming is OPAMP_TRIMMING_USER.
mbed_official 354:e67efb2aab0e 99 This parameter must be a number between Min_Data = 0 and Max_Data = 30 (Trimming value 31 is forbidden) */
mbed_official 354:e67efb2aab0e 100
mbed_official 354:e67efb2aab0e 101 uint32_t TrimmingValueN; /*!< Specifies the offset trimming value (NMOS)
mbed_official 354:e67efb2aab0e 102 i.e. when UserTrimming is OPAMP_TRIMMING_USER.
mbed_official 354:e67efb2aab0e 103 This parameter must be a number between Min_Data = 0 and Max_Data = 30 (Trimming value 31 is forbidden) */
mbed_official 354:e67efb2aab0e 104
mbed_official 354:e67efb2aab0e 105 uint32_t TrimmingValuePLowPower; /*!< Specifies the offset trimming value (PMOS)
mbed_official 354:e67efb2aab0e 106 i.e. when UserTrimming is OPAMP_TRIMMING_USER.
mbed_official 354:e67efb2aab0e 107 This parameter must be a number between Min_Data = 0 and Max_Data = 30 (Trimming value 31 is forbidden) */
mbed_official 354:e67efb2aab0e 108
mbed_official 354:e67efb2aab0e 109 uint32_t TrimmingValueNLowPower; /*!< Specifies the offset trimming value (NMOS)
mbed_official 354:e67efb2aab0e 110 i.e. when UserTrimming is OPAMP_TRIMMING_USER.
mbed_official 354:e67efb2aab0e 111 This parameter must be a number between Min_Data = 0 and Max_Data = 30 (Trimming value 31 is forbidden) */
mbed_official 354:e67efb2aab0e 112
mbed_official 354:e67efb2aab0e 113 }OPAMP_InitTypeDef;
mbed_official 354:e67efb2aab0e 114
mbed_official 354:e67efb2aab0e 115 /**
mbed_official 354:e67efb2aab0e 116 * @brief HAL State structures definition
mbed_official 354:e67efb2aab0e 117 */
mbed_official 354:e67efb2aab0e 118
mbed_official 354:e67efb2aab0e 119 typedef enum
mbed_official 354:e67efb2aab0e 120 {
mbed_official 354:e67efb2aab0e 121 HAL_OPAMP_STATE_RESET = 0x00000000, /*!< OPMAP is not yet Initialized */
mbed_official 354:e67efb2aab0e 122
mbed_official 354:e67efb2aab0e 123 HAL_OPAMP_STATE_READY = 0x00000001, /*!< OPAMP is initialized and ready for use */
mbed_official 354:e67efb2aab0e 124 HAL_OPAMP_STATE_CALIBBUSY = 0x00000002, /*!< OPAMP is enabled in auto calibration mode */
mbed_official 354:e67efb2aab0e 125
mbed_official 354:e67efb2aab0e 126 HAL_OPAMP_STATE_BUSY = 0x00000004, /*!< OPAMP is enabled and running in normal mode */
mbed_official 354:e67efb2aab0e 127 HAL_OPAMP_STATE_BUSYLOCKED = 0x00000005, /*!< OPAMP is locked
mbed_official 354:e67efb2aab0e 128 only system reset allows reconfiguring the opamp. */
mbed_official 354:e67efb2aab0e 129
mbed_official 354:e67efb2aab0e 130 }HAL_OPAMP_StateTypeDef;
mbed_official 354:e67efb2aab0e 131
mbed_official 354:e67efb2aab0e 132 /**
mbed_official 354:e67efb2aab0e 133 * @brief OPAMP Handle Structure definition
mbed_official 354:e67efb2aab0e 134 */
mbed_official 354:e67efb2aab0e 135 typedef struct
mbed_official 354:e67efb2aab0e 136 {
mbed_official 354:e67efb2aab0e 137 OPAMP_TypeDef *Instance; /*!< OPAMP instance's registers base address */
mbed_official 354:e67efb2aab0e 138 OPAMP_InitTypeDef Init; /*!< OPAMP required parameters */
mbed_official 354:e67efb2aab0e 139 HAL_StatusTypeDef Status; /*!< OPAMP peripheral status */
mbed_official 354:e67efb2aab0e 140 HAL_LockTypeDef Lock; /*!< Locking object */
mbed_official 354:e67efb2aab0e 141 __IO HAL_OPAMP_StateTypeDef State; /*!< OPAMP communication state */
mbed_official 354:e67efb2aab0e 142
mbed_official 354:e67efb2aab0e 143 } OPAMP_HandleTypeDef;
mbed_official 354:e67efb2aab0e 144
mbed_official 354:e67efb2aab0e 145 /**
mbed_official 354:e67efb2aab0e 146 * @brief OPAMP_TrimmingValueTypeDef @brief definition
mbed_official 354:e67efb2aab0e 147 */
mbed_official 354:e67efb2aab0e 148
mbed_official 354:e67efb2aab0e 149 typedef uint32_t OPAMP_TrimmingValueTypeDef;
mbed_official 354:e67efb2aab0e 150
mbed_official 354:e67efb2aab0e 151 /**
mbed_official 354:e67efb2aab0e 152 * @}
mbed_official 354:e67efb2aab0e 153 */
mbed_official 354:e67efb2aab0e 154
mbed_official 354:e67efb2aab0e 155 /* Exported constants --------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 156 /** @defgroup OPAMP_Exported_Constants OPAMP Exported Constants
mbed_official 354:e67efb2aab0e 157 * @{
mbed_official 354:e67efb2aab0e 158 */
mbed_official 354:e67efb2aab0e 159
mbed_official 354:e67efb2aab0e 160 /**
mbed_official 354:e67efb2aab0e 161 * OTR register Mask
mbed_official 354:e67efb2aab0e 162 */
mbed_official 354:e67efb2aab0e 163 #define OPAMP_TRIM_VALUE_MASK OPAMP_OTR_AO1_OPT_OFFSET_TRIM_LOW
mbed_official 354:e67efb2aab0e 164
mbed_official 354:e67efb2aab0e 165 /**
mbed_official 354:e67efb2aab0e 166 * CSR register Mask
mbed_official 354:e67efb2aab0e 167 */
mbed_official 354:e67efb2aab0e 168 #define OPAMP_CSR_INSTANCE_OFFSET ((uint32_t) 8) /* Offset of each OPAMP instance into register CSR */
mbed_official 354:e67efb2aab0e 169 #define OPAMP_OTR_INSTANCE_OFFSET ((uint32_t) 10) /* Offset of each OPAMP instance into register OTR */
mbed_official 354:e67efb2aab0e 170
mbed_official 354:e67efb2aab0e 171
mbed_official 354:e67efb2aab0e 172 /** @defgroup OPAMP_Mode OPAMP Mode
mbed_official 354:e67efb2aab0e 173 * @{
mbed_official 354:e67efb2aab0e 174 */
mbed_official 354:e67efb2aab0e 175 #define OPAMP_STANDALONE_MODE ((uint32_t)0x00000000) /*!< OPAMP standalone mode */
mbed_official 354:e67efb2aab0e 176 #define OPAMP_FOLLOWER_MODE ((uint32_t)0x00000001) /*!< OPAMP follower mode */
mbed_official 354:e67efb2aab0e 177
mbed_official 354:e67efb2aab0e 178 #define IS_OPAMP_FUNCTIONAL_NORMALMODE(INPUT) (((INPUT) == OPAMP_STANDALONE_MODE) || \
mbed_official 354:e67efb2aab0e 179 ((INPUT) == OPAMP_FOLLOWER_MODE))
mbed_official 354:e67efb2aab0e 180 /**
mbed_official 354:e67efb2aab0e 181 * @}
mbed_official 354:e67efb2aab0e 182 */
mbed_official 354:e67efb2aab0e 183
mbed_official 354:e67efb2aab0e 184 /** @defgroup OPAMP_NonInvertingInput OPAMP NonInvertingInput
mbed_official 354:e67efb2aab0e 185 * @{
mbed_official 354:e67efb2aab0e 186 */
mbed_official 354:e67efb2aab0e 187 #define OPAMP_NONINVERTINGINPUT_VP0 ((uint32_t)0x00000000) /*!< Comparator non-inverting input connected to dedicated IO pin low-leakage */
mbed_official 354:e67efb2aab0e 188 #define OPAMP_NONINVERTINGINPUT_DAC_CH1 ((uint32_t)0x00000001) /*!< Comparator non-inverting input connected internally to DAC channel 1 */
mbed_official 354:e67efb2aab0e 189 #define OPAMP_NONINVERTINGINPUT_DAC_CH2 ((uint32_t)0x00000002) /*!< Comparator non-inverting input connected internally to DAC channel 2. Available on OPAMP2 only. */
mbed_official 354:e67efb2aab0e 190
mbed_official 354:e67efb2aab0e 191 #define IS_OPAMP_NONINVERTING_INPUT(INPUT) (((INPUT) == OPAMP_NONINVERTINGINPUT_VP0) || \
mbed_official 354:e67efb2aab0e 192 ((INPUT) == OPAMP_NONINVERTINGINPUT_DAC_CH1) || \
mbed_official 354:e67efb2aab0e 193 ((INPUT) == OPAMP_NONINVERTINGINPUT_DAC_CH2) )
mbed_official 354:e67efb2aab0e 194 /**
mbed_official 354:e67efb2aab0e 195 * @}
mbed_official 354:e67efb2aab0e 196 */
mbed_official 354:e67efb2aab0e 197
mbed_official 354:e67efb2aab0e 198 /** @defgroup OPAMP_InvertingInput OPAMP InvertingInput
mbed_official 354:e67efb2aab0e 199 * @{
mbed_official 354:e67efb2aab0e 200 */
mbed_official 354:e67efb2aab0e 201 #define OPAMP_INVERTINGINPUT_VM0 ((uint32_t)0x00000000) /*!< Comparator inverting input connected to dedicated IO pin low-leakage */
mbed_official 354:e67efb2aab0e 202 #define OPAMP_INVERTINGINPUT_VM1 ((uint32_t)0x00000001) /*!< Comparator inverting input connected to alternative IO pin available on some device packages */
mbed_official 354:e67efb2aab0e 203
mbed_official 354:e67efb2aab0e 204 #define OPAMP_INVERTINGINPUT_VINM OPAMP_INVERTINGINPUT_VM1 /*!< Alternate name for comparator inverting input connected to alternative IO pin available on some device packages */
mbed_official 354:e67efb2aab0e 205
mbed_official 354:e67efb2aab0e 206 #define IOPAMP_INVERTINGINPUT_VM0 OPAMP_INVERTINGINPUT_VM0 /* For compatibility with other STM32 devices */
mbed_official 354:e67efb2aab0e 207 #define IOPAMP_INVERTINGINPUT_VM1 OPAMP_INVERTINGINPUT_VM1 /* For compatibility with other STM32 devices */
mbed_official 354:e67efb2aab0e 208
mbed_official 354:e67efb2aab0e 209 #define IS_OPAMP_INVERTING_INPUT(INPUT) (((INPUT) == OPAMP_INVERTINGINPUT_VM0) || \
mbed_official 354:e67efb2aab0e 210 ((INPUT) == OPAMP_INVERTINGINPUT_VM1) )
mbed_official 354:e67efb2aab0e 211 /**
mbed_official 354:e67efb2aab0e 212 * @}
mbed_official 354:e67efb2aab0e 213 */
mbed_official 354:e67efb2aab0e 214
mbed_official 354:e67efb2aab0e 215 /** @defgroup OPAMP_PowerMode OPAMP PowerMode
mbed_official 354:e67efb2aab0e 216 * @{
mbed_official 354:e67efb2aab0e 217 */
mbed_official 354:e67efb2aab0e 218 #define OPAMP_POWERMODE_NORMAL ((uint32_t)0x00000000)
mbed_official 354:e67efb2aab0e 219 #define OPAMP_POWERMODE_LOWPOWER ((uint32_t)0x00000001)
mbed_official 354:e67efb2aab0e 220
mbed_official 354:e67efb2aab0e 221 #define IS_OPAMP_POWERMODE(TRIMMING) (((TRIMMING) == OPAMP_POWERMODE_NORMAL) || \
mbed_official 354:e67efb2aab0e 222 ((TRIMMING) == OPAMP_POWERMODE_LOWPOWER) )
mbed_official 354:e67efb2aab0e 223 /**
mbed_official 354:e67efb2aab0e 224 * @}
mbed_official 354:e67efb2aab0e 225 */
mbed_official 354:e67efb2aab0e 226
mbed_official 354:e67efb2aab0e 227 /** @defgroup OPAMP_PowerSupplyRange OPAMP PowerSupplyRange
mbed_official 354:e67efb2aab0e 228 * @{
mbed_official 354:e67efb2aab0e 229 */
mbed_official 354:e67efb2aab0e 230 #define OPAMP_POWERSUPPLY_LOW ((uint32_t)0x00000000) /*!< Power supply range low (VDDA lower than 2.4V) */
mbed_official 354:e67efb2aab0e 231 #define OPAMP_POWERSUPPLY_HIGH OPAMP_CSR_AOP_RANGE /*!< Power supply range high (VDDA higher than 2.4V) */
mbed_official 354:e67efb2aab0e 232
mbed_official 354:e67efb2aab0e 233 #define IS_OPAMP_POWER_SUPPLY_RANGE(RANGE) (((RANGE) == OPAMP_POWERSUPPLY_LOW) || \
mbed_official 354:e67efb2aab0e 234 ((RANGE) == OPAMP_POWERSUPPLY_HIGH) )
mbed_official 354:e67efb2aab0e 235 /**
mbed_official 354:e67efb2aab0e 236 * @}
mbed_official 354:e67efb2aab0e 237 */
mbed_official 354:e67efb2aab0e 238
mbed_official 354:e67efb2aab0e 239 /** @defgroup OPAMP_UserTrimming OPAMP UserTrimming
mbed_official 354:e67efb2aab0e 240 * @{
mbed_official 354:e67efb2aab0e 241 */
mbed_official 354:e67efb2aab0e 242 #define OPAMP_TRIMMING_FACTORY ((uint32_t)0x00000000) /*!< Factory trimming */
mbed_official 354:e67efb2aab0e 243 #define OPAMP_TRIMMING_USER OPAMP_OTR_OT_USER /*!< User trimming */
mbed_official 354:e67efb2aab0e 244
mbed_official 354:e67efb2aab0e 245 #define IS_OPAMP_TRIMMING(TRIMMING) (((TRIMMING) == OPAMP_TRIMMING_FACTORY) || \
mbed_official 354:e67efb2aab0e 246 ((TRIMMING) == OPAMP_TRIMMING_USER))
mbed_official 354:e67efb2aab0e 247 /**
mbed_official 354:e67efb2aab0e 248 * @}
mbed_official 354:e67efb2aab0e 249 */
mbed_official 354:e67efb2aab0e 250
mbed_official 354:e67efb2aab0e 251 /** @defgroup OPAMP_FactoryTrimming OPAMP FactoryTrimming
mbed_official 354:e67efb2aab0e 252 * @{
mbed_official 354:e67efb2aab0e 253 */
mbed_official 354:e67efb2aab0e 254 #define OPAMP_FACTORYTRIMMING_DUMMY ((uint32_t)0xFFFFFFFF) /*!< Dummy value if trimming value could not be retrieved */
mbed_official 354:e67efb2aab0e 255
mbed_official 354:e67efb2aab0e 256 #define OPAMP_FACTORYTRIMMING_P ((uint32_t)0x00000000) /*!< Offset trimming P */
mbed_official 354:e67efb2aab0e 257 #define OPAMP_FACTORYTRIMMING_N POSITION_VAL(OPAMP_OTR_AO1_OPT_OFFSET_TRIM_HIGH) /*!< Offset trimming N */
mbed_official 354:e67efb2aab0e 258
mbed_official 354:e67efb2aab0e 259 #define IS_OPAMP_FACTORYTRIMMING(TRIMMING) (((TRIMMING) == OPAMP_FACTORYTRIMMING_N) || \
mbed_official 354:e67efb2aab0e 260 ((TRIMMING) == OPAMP_FACTORYTRIMMING_P) )
mbed_official 354:e67efb2aab0e 261 /**
mbed_official 354:e67efb2aab0e 262 * @}
mbed_official 354:e67efb2aab0e 263 */
mbed_official 354:e67efb2aab0e 264
mbed_official 354:e67efb2aab0e 265 /**
mbed_official 354:e67efb2aab0e 266 * @}
mbed_official 354:e67efb2aab0e 267 */
mbed_official 354:e67efb2aab0e 268
mbed_official 354:e67efb2aab0e 269 /* Private constants ---------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 270 /** @defgroup OPAMP_Private_Constants OPAMP Private Constants
mbed_official 354:e67efb2aab0e 271 * @{
mbed_official 354:e67efb2aab0e 272 */
mbed_official 354:e67efb2aab0e 273
mbed_official 354:e67efb2aab0e 274 /* Offset trimming time: during calibration, minimum time needed between two */
mbed_official 354:e67efb2aab0e 275 /* steps to have 1 mV accuracy. */
mbed_official 354:e67efb2aab0e 276 /* Refer to datasheet, electrical characteristics: parameter tOFFTRIM Typ=1ms.*/
mbed_official 354:e67efb2aab0e 277 /* Unit: ms. */
mbed_official 354:e67efb2aab0e 278 #define OPAMP_TRIMMING_DELAY ((uint32_t) 1)
mbed_official 354:e67efb2aab0e 279
mbed_official 354:e67efb2aab0e 280 /**
mbed_official 354:e67efb2aab0e 281 * @}
mbed_official 354:e67efb2aab0e 282 */
mbed_official 354:e67efb2aab0e 283
mbed_official 354:e67efb2aab0e 284
mbed_official 354:e67efb2aab0e 285 /* Exported macros -----------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 286
mbed_official 354:e67efb2aab0e 287 /** @defgroup OPAMP_Private_Macro OPAMP Private Macro
mbed_official 354:e67efb2aab0e 288 * @{
mbed_official 354:e67efb2aab0e 289 */
mbed_official 354:e67efb2aab0e 290
mbed_official 354:e67efb2aab0e 291 /** @brief Reset OPAMP handle state
mbed_official 354:e67efb2aab0e 292 * @param __HANDLE__: OPAMP handle.
mbed_official 354:e67efb2aab0e 293 * @retval None
mbed_official 354:e67efb2aab0e 294 */
mbed_official 354:e67efb2aab0e 295 #define __HAL_OPAMP_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_OPAMP_STATE_RESET)
mbed_official 354:e67efb2aab0e 296
mbed_official 354:e67efb2aab0e 297 /**
mbed_official 354:e67efb2aab0e 298 * @}
mbed_official 354:e67efb2aab0e 299 */
mbed_official 354:e67efb2aab0e 300
mbed_official 354:e67efb2aab0e 301
mbed_official 354:e67efb2aab0e 302 /* Private macro -------------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 303
mbed_official 354:e67efb2aab0e 304 /** @defgroup OPAMP_Private_Macro OPAMP Private Macro
mbed_official 354:e67efb2aab0e 305 * @{
mbed_official 354:e67efb2aab0e 306 */
mbed_official 354:e67efb2aab0e 307
mbed_official 354:e67efb2aab0e 308 /**
mbed_official 354:e67efb2aab0e 309 * @brief Select the OPAMP bit OPAxPD (power-down) corresponding to the
mbed_official 354:e67efb2aab0e 310 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 311 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 312 * @retval None
mbed_official 354:e67efb2aab0e 313 */
mbed_official 354:e67efb2aab0e 314 #define __OPAMP_CSR_OPAXPD(__HANDLE__) \
mbed_official 354:e67efb2aab0e 315 (OPAMP_CSR_OPA1PD << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 316
mbed_official 354:e67efb2aab0e 317 /**
mbed_official 354:e67efb2aab0e 318 * @brief Select the OPAMP bit S3SELx (switch 3) corresponding to the
mbed_official 354:e67efb2aab0e 319 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 320 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 321 * @retval None
mbed_official 354:e67efb2aab0e 322 */
mbed_official 354:e67efb2aab0e 323 #define __OPAMP_CSR_S3SELX(__HANDLE__) \
mbed_official 354:e67efb2aab0e 324 (OPAMP_CSR_S3SEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 325
mbed_official 354:e67efb2aab0e 326 /**
mbed_official 354:e67efb2aab0e 327 * @brief Select the OPAMP bit S4SELx (switch 4) corresponding to the
mbed_official 354:e67efb2aab0e 328 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 329 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 330 * @retval None
mbed_official 354:e67efb2aab0e 331 */
mbed_official 354:e67efb2aab0e 332 #define __OPAMP_CSR_S4SELX(__HANDLE__) \
mbed_official 354:e67efb2aab0e 333 (OPAMP_CSR_S4SEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 334
mbed_official 354:e67efb2aab0e 335 /**
mbed_official 354:e67efb2aab0e 336 * @brief Select the OPAMP bit S5SELx (switch 5) corresponding to the
mbed_official 354:e67efb2aab0e 337 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 338 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 339 * @retval None
mbed_official 354:e67efb2aab0e 340 */
mbed_official 354:e67efb2aab0e 341 #define __OPAMP_CSR_S5SELX(__HANDLE__) \
mbed_official 354:e67efb2aab0e 342 (OPAMP_CSR_S5SEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 343
mbed_official 354:e67efb2aab0e 344 /**
mbed_official 354:e67efb2aab0e 345 * @brief Select the OPAMP bit S3SELx (switch 6) corresponding to the
mbed_official 354:e67efb2aab0e 346 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 347 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 348 * @retval None
mbed_official 354:e67efb2aab0e 349 */
mbed_official 354:e67efb2aab0e 350 #define __OPAMP_CSR_S6SELX(__HANDLE__) \
mbed_official 354:e67efb2aab0e 351 (OPAMP_CSR_S6SEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 352
mbed_official 354:e67efb2aab0e 353 /**
mbed_official 354:e67efb2aab0e 354 * @brief Select the OPAMP bit OPAxCAL_L (offset calibration for differential
mbed_official 354:e67efb2aab0e 355 * pair P) corresponding to the selected OPAMP instance.
mbed_official 354:e67efb2aab0e 356 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 357 * @retval None
mbed_official 354:e67efb2aab0e 358 */
mbed_official 354:e67efb2aab0e 359 #define __OPAMP_CSR_OPAXCAL_L(__HANDLE__) \
mbed_official 354:e67efb2aab0e 360 (OPAMP_CSR_OPA1CAL_L << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 361
mbed_official 354:e67efb2aab0e 362 /**
mbed_official 354:e67efb2aab0e 363 * @brief Select the OPAMP bit OPAxCAL_H (offset calibration for differential
mbed_official 354:e67efb2aab0e 364 * pair N) corresponding to the selected OPAMP instance.
mbed_official 354:e67efb2aab0e 365 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 366 * @retval None
mbed_official 354:e67efb2aab0e 367 */
mbed_official 354:e67efb2aab0e 368 #define __OPAMP_CSR_OPAXCAL_H(__HANDLE__) \
mbed_official 354:e67efb2aab0e 369 (OPAMP_CSR_OPA1CAL_H << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 370
mbed_official 354:e67efb2aab0e 371 /**
mbed_official 354:e67efb2aab0e 372 * @brief Select the OPAMP bit OPAxLPM (low power mode) corresponding to the
mbed_official 354:e67efb2aab0e 373 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 374 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 375 * @retval None
mbed_official 354:e67efb2aab0e 376 */
mbed_official 354:e67efb2aab0e 377 #define __OPAMP_CSR_OPAXLPM(__HANDLE__) \
mbed_official 354:e67efb2aab0e 378 (OPAMP_CSR_OPA1LPM << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET))
mbed_official 354:e67efb2aab0e 379
mbed_official 354:e67efb2aab0e 380 /**
mbed_official 354:e67efb2aab0e 381 * @brief Select the OPAMP bits of all switches corresponding to the
mbed_official 354:e67efb2aab0e 382 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 383 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 384 * @retval None
mbed_official 354:e67efb2aab0e 385 */
mbed_official 354:e67efb2aab0e 386 #define __OPAMP_CSR_ALL_SWITCHES(__HANDLE__) \
mbed_official 354:e67efb2aab0e 387 ( ( ((__HANDLE__)->Instance != OPAMP2) \
mbed_official 354:e67efb2aab0e 388 )? \
mbed_official 354:e67efb2aab0e 389 ( \
mbed_official 354:e67efb2aab0e 390 ((OPAMP_CSR_S3SEL1 | OPAMP_CSR_S4SEL1 | OPAMP_CSR_S5SEL1 | OPAMP_CSR_S6SEL1) << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET)) \
mbed_official 354:e67efb2aab0e 391 | \
mbed_official 354:e67efb2aab0e 392 (OPAMP_CSR_ANAWSEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__))) \
mbed_official 354:e67efb2aab0e 393 ) \
mbed_official 354:e67efb2aab0e 394 : \
mbed_official 354:e67efb2aab0e 395 ( \
mbed_official 354:e67efb2aab0e 396 ((OPAMP_CSR_S3SEL1 | OPAMP_CSR_S4SEL1 | OPAMP_CSR_S5SEL1 | OPAMP_CSR_S6SEL1) << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__) * OPAMP_CSR_INSTANCE_OFFSET)) \
mbed_official 354:e67efb2aab0e 397 | \
mbed_official 354:e67efb2aab0e 398 (OPAMP_CSR_ANAWSEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__))) \
mbed_official 354:e67efb2aab0e 399 | \
mbed_official 354:e67efb2aab0e 400 (OPAMP_CSR_S7SEL2) \
mbed_official 354:e67efb2aab0e 401 ) \
mbed_official 354:e67efb2aab0e 402 )
mbed_official 354:e67efb2aab0e 403
mbed_official 354:e67efb2aab0e 404 /**
mbed_official 354:e67efb2aab0e 405 * @brief Select the OPAMP bit ANAWSELx (switch SanA) corresponding to the
mbed_official 354:e67efb2aab0e 406 * selected OPAMP instance.
mbed_official 354:e67efb2aab0e 407 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 408 * @retval None
mbed_official 354:e67efb2aab0e 409 */
mbed_official 354:e67efb2aab0e 410 #define __OPAMP_CSR_ANAWSELX(__HANDLE__) \
mbed_official 354:e67efb2aab0e 411 (OPAMP_CSR_ANAWSEL1 << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__)))
mbed_official 354:e67efb2aab0e 412
mbed_official 354:e67efb2aab0e 413 /**
mbed_official 354:e67efb2aab0e 414 * @brief Select the OPAMP bit OPAxCALOUT in function of the selected
mbed_official 354:e67efb2aab0e 415 * OPAMP instance.
mbed_official 354:e67efb2aab0e 416 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 417 * @retval None
mbed_official 354:e67efb2aab0e 418 */
mbed_official 354:e67efb2aab0e 419 #define __OPAMP_CSR_OPAXCALOUT(__HANDLE__) \
mbed_official 354:e67efb2aab0e 420 (OPAMP_CSR_OPA1CALOUT << (__OPAMP_INSTANCE_DECIMAL__(__HANDLE__)))
mbed_official 354:e67efb2aab0e 421
mbed_official 354:e67efb2aab0e 422 /**
mbed_official 354:e67efb2aab0e 423 * @brief Select the OPAMP trimming bits position value (position of LSB)
mbed_official 354:e67efb2aab0e 424 * in register OPAMP_OTR or register OPAMP_LPOTR in function of the selected
mbed_official 354:e67efb2aab0e 425 * OPAMP instance and the transistors differential pair high (PMOS) or
mbed_official 354:e67efb2aab0e 426 * low (NMOS).
mbed_official 354:e67efb2aab0e 427 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 428 * @param __TRIM_HIGH_LOW__: transistors differential pair high or low.
mbed_official 354:e67efb2aab0e 429 * Must be a value of @ref OPAMP_FactoryTrimming.
mbed_official 354:e67efb2aab0e 430 * @retval None
mbed_official 354:e67efb2aab0e 431 */
mbed_official 354:e67efb2aab0e 432 #define __OPAMP_OFFSET_TRIM_BITSPOSITION(__HANDLE__, __TRIM_HIGH_LOW__) \
mbed_official 354:e67efb2aab0e 433 ((__OPAMP_INSTANCE_DECIMAL__((__HANDLE__)) * OPAMP_OTR_INSTANCE_OFFSET) + (__TRIM_HIGH_LOW__))
mbed_official 354:e67efb2aab0e 434
mbed_official 354:e67efb2aab0e 435 /**
mbed_official 354:e67efb2aab0e 436 * @brief Shift the OPAMP trimming bits to register OPAMP_OTR or register
mbed_official 354:e67efb2aab0e 437 * OPAMP_LPOTR in function of the selected OPAMP instance and the transistors
mbed_official 354:e67efb2aab0e 438 * differential pair high (PMOS) or low (NMOS).
mbed_official 354:e67efb2aab0e 439 * @param __HANDLE__: OPAMP handle
mbed_official 354:e67efb2aab0e 440 * @param __TRIM_HIGH_LOW__: transistors differential pair high or low.
mbed_official 354:e67efb2aab0e 441 * Must be a value of @ref OPAMP_FactoryTrimming.
mbed_official 354:e67efb2aab0e 442 * @param __TRIMMING_VALUE__: Trimming value
mbed_official 354:e67efb2aab0e 443 * @retval None
mbed_official 354:e67efb2aab0e 444 */
mbed_official 354:e67efb2aab0e 445 #define __OPAMP_OFFSET_TRIM_SET(__HANDLE__, __TRIM_HIGH_LOW__, __TRIMMING_VALUE__) \
mbed_official 354:e67efb2aab0e 446 ((__TRIMMING_VALUE__) << (__OPAMP_OFFSET_TRIM_BITSPOSITION((__HANDLE__), (__TRIM_HIGH_LOW__))))
mbed_official 354:e67efb2aab0e 447
mbed_official 354:e67efb2aab0e 448 /**
mbed_official 354:e67efb2aab0e 449 * @brief Check that trimming value is within correct range
mbed_official 354:e67efb2aab0e 450 * @param TRIMMINGVALUE: OPAMP trimming value
mbed_official 354:e67efb2aab0e 451 * @retval None
mbed_official 354:e67efb2aab0e 452 */
mbed_official 354:e67efb2aab0e 453 #define IS_OPAMP_TRIMMINGVALUE(TRIMMINGVALUE) ((TRIMMINGVALUE) <= 0x1E)
mbed_official 354:e67efb2aab0e 454
mbed_official 354:e67efb2aab0e 455 /**
mbed_official 354:e67efb2aab0e 456 * @}
mbed_official 354:e67efb2aab0e 457 */
mbed_official 354:e67efb2aab0e 458
mbed_official 354:e67efb2aab0e 459
mbed_official 354:e67efb2aab0e 460 /* Include OPAMP HAL Extension module */
mbed_official 354:e67efb2aab0e 461 #include "stm32l1xx_hal_opamp_ex.h"
mbed_official 354:e67efb2aab0e 462
mbed_official 354:e67efb2aab0e 463 /* Exported functions --------------------------------------------------------*/
mbed_official 354:e67efb2aab0e 464
mbed_official 354:e67efb2aab0e 465 /** @addtogroup OPAMP_Exported_Functions
mbed_official 354:e67efb2aab0e 466 * @{
mbed_official 354:e67efb2aab0e 467 */
mbed_official 354:e67efb2aab0e 468
mbed_official 354:e67efb2aab0e 469 /** @addtogroup OPAMP_Exported_Functions_Group1
mbed_official 354:e67efb2aab0e 470 * @{
mbed_official 354:e67efb2aab0e 471 */
mbed_official 354:e67efb2aab0e 472 /* Initialization/de-initialization functions **********************************/
mbed_official 354:e67efb2aab0e 473 HAL_StatusTypeDef HAL_OPAMP_Init(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 474 HAL_StatusTypeDef HAL_OPAMP_DeInit (OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 475 void HAL_OPAMP_MspInit(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 476 void HAL_OPAMP_MspDeInit(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 477 /**
mbed_official 354:e67efb2aab0e 478 * @}
mbed_official 354:e67efb2aab0e 479 */
mbed_official 354:e67efb2aab0e 480
mbed_official 354:e67efb2aab0e 481 /** @addtogroup OPAMP_Exported_Functions_Group2
mbed_official 354:e67efb2aab0e 482 * @{
mbed_official 354:e67efb2aab0e 483 */
mbed_official 354:e67efb2aab0e 484 /* I/O operation functions *****************************************************/
mbed_official 354:e67efb2aab0e 485 HAL_StatusTypeDef HAL_OPAMP_Start(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 486 HAL_StatusTypeDef HAL_OPAMP_Stop(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 487 HAL_StatusTypeDef HAL_OPAMP_SelfCalibrate(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 488 OPAMP_TrimmingValueTypeDef HAL_OPAMP_GetTrimOffset (OPAMP_HandleTypeDef *hopamp, uint32_t trimmingoffset);
mbed_official 354:e67efb2aab0e 489 /**
mbed_official 354:e67efb2aab0e 490 * @}
mbed_official 354:e67efb2aab0e 491 */
mbed_official 354:e67efb2aab0e 492
mbed_official 354:e67efb2aab0e 493 /** @addtogroup OPAMP_Exported_Functions_Group3
mbed_official 354:e67efb2aab0e 494 * @{
mbed_official 354:e67efb2aab0e 495 */
mbed_official 354:e67efb2aab0e 496 /* Peripheral Control functions ************************************************/
mbed_official 354:e67efb2aab0e 497 HAL_StatusTypeDef HAL_OPAMP_Lock(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 498 /**
mbed_official 354:e67efb2aab0e 499 * @}
mbed_official 354:e67efb2aab0e 500 */
mbed_official 354:e67efb2aab0e 501
mbed_official 354:e67efb2aab0e 502 /** @addtogroup OPAMP_Exported_Functions_Group4
mbed_official 354:e67efb2aab0e 503 * @{
mbed_official 354:e67efb2aab0e 504 */
mbed_official 354:e67efb2aab0e 505 /* Peripheral State functions **************************************************/
mbed_official 354:e67efb2aab0e 506 HAL_OPAMP_StateTypeDef HAL_OPAMP_GetState(OPAMP_HandleTypeDef *hopamp);
mbed_official 354:e67efb2aab0e 507 /**
mbed_official 354:e67efb2aab0e 508 * @}
mbed_official 354:e67efb2aab0e 509 */
mbed_official 354:e67efb2aab0e 510
mbed_official 354:e67efb2aab0e 511 /**
mbed_official 354:e67efb2aab0e 512 * @}
mbed_official 354:e67efb2aab0e 513 */
mbed_official 354:e67efb2aab0e 514
mbed_official 354:e67efb2aab0e 515
mbed_official 354:e67efb2aab0e 516
mbed_official 354:e67efb2aab0e 517
mbed_official 354:e67efb2aab0e 518 /**
mbed_official 354:e67efb2aab0e 519 * @}
mbed_official 354:e67efb2aab0e 520 */
mbed_official 354:e67efb2aab0e 521
mbed_official 354:e67efb2aab0e 522 /**
mbed_official 354:e67efb2aab0e 523 * @}
mbed_official 354:e67efb2aab0e 524 */
mbed_official 354:e67efb2aab0e 525
mbed_official 354:e67efb2aab0e 526 #endif /* STM32L151xCA || STM32L151xD || STM32L152xCA || STM32L152xD || STM32L162xCA || STM32L162xD || STM32L151xE || STM32L152xE || STM32L162xE || STM32L162xC || STM32L152xC || STM32L151xC */
mbed_official 354:e67efb2aab0e 527 #ifdef __cplusplus
mbed_official 354:e67efb2aab0e 528 }
mbed_official 354:e67efb2aab0e 529 #endif
mbed_official 354:e67efb2aab0e 530
mbed_official 354:e67efb2aab0e 531 #endif /* __STM32L1xx_HAL_OPAMP_H */
mbed_official 354:e67efb2aab0e 532
mbed_official 354:e67efb2aab0e 533 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/