mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Wed Feb 20 22:31:08 2019 +0000
Revision:
189:f392fc9709a3
Parent:
180:96ed750bd169
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 156:95d6b41a828b 1 /**
<> 156:95d6b41a828b 2 ******************************************************************************
<> 156:95d6b41a828b 3 * @file stm32f0xx_ll_comp.c
<> 156:95d6b41a828b 4 * @author MCD Application Team
<> 156:95d6b41a828b 5 * @brief COMP LL module driver
<> 156:95d6b41a828b 6 ******************************************************************************
<> 156:95d6b41a828b 7 * @attention
<> 156:95d6b41a828b 8 *
<> 156:95d6b41a828b 9 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
<> 156:95d6b41a828b 10 *
<> 156:95d6b41a828b 11 * Redistribution and use in source and binary forms, with or without modification,
<> 156:95d6b41a828b 12 * are permitted provided that the following conditions are met:
<> 156:95d6b41a828b 13 * 1. Redistributions of source code must retain the above copyright notice,
<> 156:95d6b41a828b 14 * this list of conditions and the following disclaimer.
<> 156:95d6b41a828b 15 * 2. Redistributions in binary form must reproduce the above copyright notice,
<> 156:95d6b41a828b 16 * this list of conditions and the following disclaimer in the documentation
<> 156:95d6b41a828b 17 * and/or other materials provided with the distribution.
<> 156:95d6b41a828b 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors
<> 156:95d6b41a828b 19 * may be used to endorse or promote products derived from this software
<> 156:95d6b41a828b 20 * without specific prior written permission.
<> 156:95d6b41a828b 21 *
<> 156:95d6b41a828b 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
<> 156:95d6b41a828b 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
<> 156:95d6b41a828b 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
<> 156:95d6b41a828b 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
<> 156:95d6b41a828b 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
<> 156:95d6b41a828b 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
<> 156:95d6b41a828b 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
<> 156:95d6b41a828b 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
<> 156:95d6b41a828b 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
<> 156:95d6b41a828b 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
<> 156:95d6b41a828b 32 *
<> 156:95d6b41a828b 33 ******************************************************************************
<> 156:95d6b41a828b 34 */
<> 156:95d6b41a828b 35 #if defined(USE_FULL_LL_DRIVER)
<> 156:95d6b41a828b 36
<> 156:95d6b41a828b 37 /* Includes ------------------------------------------------------------------*/
<> 156:95d6b41a828b 38 #include "stm32f0xx_ll_comp.h"
<> 156:95d6b41a828b 39
<> 156:95d6b41a828b 40 #ifdef USE_FULL_ASSERT
<> 156:95d6b41a828b 41 #include "stm32_assert.h"
<> 156:95d6b41a828b 42 #else
<> 156:95d6b41a828b 43 #define assert_param(expr) ((void)0U)
<> 156:95d6b41a828b 44 #endif
<> 156:95d6b41a828b 45
<> 156:95d6b41a828b 46 /** @addtogroup STM32F0xx_LL_Driver
<> 156:95d6b41a828b 47 * @{
<> 156:95d6b41a828b 48 */
<> 156:95d6b41a828b 49
<> 156:95d6b41a828b 50 #if defined (COMP1) || defined (COMP2)
<> 156:95d6b41a828b 51
<> 156:95d6b41a828b 52 /** @addtogroup COMP_LL COMP
<> 156:95d6b41a828b 53 * @{
<> 156:95d6b41a828b 54 */
<> 156:95d6b41a828b 55
<> 156:95d6b41a828b 56 /* Private types -------------------------------------------------------------*/
<> 156:95d6b41a828b 57 /* Private variables ---------------------------------------------------------*/
<> 156:95d6b41a828b 58 /* Private constants ---------------------------------------------------------*/
<> 156:95d6b41a828b 59 /* Private macros ------------------------------------------------------------*/
<> 156:95d6b41a828b 60
<> 156:95d6b41a828b 61 /** @addtogroup COMP_LL_Private_Macros
<> 156:95d6b41a828b 62 * @{
<> 156:95d6b41a828b 63 */
<> 156:95d6b41a828b 64
<> 156:95d6b41a828b 65 /* Check of parameters for configuration of COMP hierarchical scope: */
<> 156:95d6b41a828b 66 /* COMP instance. */
<> 156:95d6b41a828b 67
<> 156:95d6b41a828b 68 #define IS_LL_COMP_POWER_MODE(__POWER_MODE__) \
<> 156:95d6b41a828b 69 ( ((__POWER_MODE__) == LL_COMP_POWERMODE_HIGHSPEED) \
<> 156:95d6b41a828b 70 || ((__POWER_MODE__) == LL_COMP_POWERMODE_MEDIUMSPEED) \
<> 156:95d6b41a828b 71 || ((__POWER_MODE__) == LL_COMP_POWERMODE_LOWPOWER) \
<> 156:95d6b41a828b 72 || ((__POWER_MODE__) == LL_COMP_POWERMODE_ULTRALOWPOWER) \
<> 156:95d6b41a828b 73 )
<> 156:95d6b41a828b 74
<> 156:95d6b41a828b 75 /* Note: On this STM32 serie, comparator input plus parameters are */
<> 156:95d6b41a828b 76 /* the different depending on COMP instances. */
<> 156:95d6b41a828b 77 #define IS_LL_COMP_INPUT_PLUS(__COMP_INSTANCE__, __INPUT_PLUS__) \
<> 156:95d6b41a828b 78 (((__COMP_INSTANCE__) == COMP1) \
<> 156:95d6b41a828b 79 ? ( \
<> 156:95d6b41a828b 80 ((__INPUT_PLUS__) == LL_COMP_INPUT_PLUS_IO1) \
<> 156:95d6b41a828b 81 || ((__INPUT_PLUS__) == LL_COMP_INPUT_PLUS_DAC1_CH1) \
<> 156:95d6b41a828b 82 ) \
<> 156:95d6b41a828b 83 : \
<> 156:95d6b41a828b 84 ( \
<> 156:95d6b41a828b 85 ((__INPUT_PLUS__) == LL_COMP_INPUT_PLUS_IO1) \
<> 156:95d6b41a828b 86 ) \
<> 156:95d6b41a828b 87 )
<> 156:95d6b41a828b 88
<> 156:95d6b41a828b 89 /* Note: On this STM32 serie, comparator input minus parameters are */
<> 156:95d6b41a828b 90 /* the same on all COMP instances. */
<> 156:95d6b41a828b 91 /* However, comparator instance kept as macro parameter for */
<> 156:95d6b41a828b 92 /* compatibility with other STM32 families. */
<> 156:95d6b41a828b 93 #define IS_LL_COMP_INPUT_MINUS(__COMP_INSTANCE__, __INPUT_MINUS__) \
<> 156:95d6b41a828b 94 ( ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_1_4VREFINT) \
<> 156:95d6b41a828b 95 || ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_1_2VREFINT) \
<> 156:95d6b41a828b 96 || ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_3_4VREFINT) \
<> 156:95d6b41a828b 97 || ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_VREFINT) \
<> 156:95d6b41a828b 98 || ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_DAC1_CH1) \
<> 156:95d6b41a828b 99 || ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_DAC1_CH2) \
<> 156:95d6b41a828b 100 || ((__INPUT_MINUS__) == LL_COMP_INPUT_MINUS_IO1) \
<> 156:95d6b41a828b 101 )
<> 156:95d6b41a828b 102
<> 156:95d6b41a828b 103 #define IS_LL_COMP_INPUT_HYSTERESIS(__INPUT_HYSTERESIS__) \
<> 156:95d6b41a828b 104 ( ((__INPUT_HYSTERESIS__) == LL_COMP_HYSTERESIS_NONE) \
<> 156:95d6b41a828b 105 || ((__INPUT_HYSTERESIS__) == LL_COMP_HYSTERESIS_LOW) \
<> 156:95d6b41a828b 106 || ((__INPUT_HYSTERESIS__) == LL_COMP_HYSTERESIS_MEDIUM) \
<> 156:95d6b41a828b 107 || ((__INPUT_HYSTERESIS__) == LL_COMP_HYSTERESIS_HIGH) \
<> 156:95d6b41a828b 108 )
<> 156:95d6b41a828b 109
<> 156:95d6b41a828b 110 #define IS_LL_COMP_OUTPUT_SELECTION(__OUTPUT_SELECTION__) \
<> 156:95d6b41a828b 111 ( ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_NONE) \
<> 156:95d6b41a828b 112 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM1_BKIN) \
<> 156:95d6b41a828b 113 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM1_IC1) \
<> 156:95d6b41a828b 114 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM1_OCCLR) \
<> 156:95d6b41a828b 115 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM2_IC4) \
<> 156:95d6b41a828b 116 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM2_OCCLR) \
<> 156:95d6b41a828b 117 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM3_IC1) \
<> 156:95d6b41a828b 118 || ((__OUTPUT_SELECTION__) == LL_COMP_OUTPUT_TIM3_OCCLR) \
<> 156:95d6b41a828b 119 )
<> 156:95d6b41a828b 120
<> 156:95d6b41a828b 121 #define IS_LL_COMP_OUTPUT_POLARITY(__POLARITY__) \
<> 156:95d6b41a828b 122 ( ((__POLARITY__) == LL_COMP_OUTPUTPOL_NONINVERTED) \
<> 156:95d6b41a828b 123 || ((__POLARITY__) == LL_COMP_OUTPUTPOL_INVERTED) \
<> 156:95d6b41a828b 124 )
<> 156:95d6b41a828b 125
<> 156:95d6b41a828b 126 /**
<> 156:95d6b41a828b 127 * @}
<> 156:95d6b41a828b 128 */
<> 156:95d6b41a828b 129
<> 156:95d6b41a828b 130
<> 156:95d6b41a828b 131 /* Private function prototypes -----------------------------------------------*/
<> 156:95d6b41a828b 132
<> 156:95d6b41a828b 133 /* Exported functions --------------------------------------------------------*/
<> 156:95d6b41a828b 134 /** @addtogroup COMP_LL_Exported_Functions
<> 156:95d6b41a828b 135 * @{
<> 156:95d6b41a828b 136 */
<> 156:95d6b41a828b 137
<> 156:95d6b41a828b 138 /** @addtogroup COMP_LL_EF_Init
<> 156:95d6b41a828b 139 * @{
<> 156:95d6b41a828b 140 */
<> 156:95d6b41a828b 141
<> 156:95d6b41a828b 142 /**
<> 156:95d6b41a828b 143 * @brief De-initialize registers of the selected COMP instance
<> 156:95d6b41a828b 144 * to their default reset values.
<> 156:95d6b41a828b 145 * @note If comparator is locked, de-initialization by software is
<> 156:95d6b41a828b 146 * not possible.
<> 156:95d6b41a828b 147 * The only way to unlock the comparator is a device hardware reset.
<> 156:95d6b41a828b 148 * @param COMPx COMP instance
<> 156:95d6b41a828b 149 * @retval An ErrorStatus enumeration value:
<> 156:95d6b41a828b 150 * - SUCCESS: COMP registers are de-initialized
<> 156:95d6b41a828b 151 * - ERROR: COMP registers are not de-initialized
<> 156:95d6b41a828b 152 */
<> 156:95d6b41a828b 153 ErrorStatus LL_COMP_DeInit(COMP_TypeDef *COMPx)
<> 156:95d6b41a828b 154 {
<> 156:95d6b41a828b 155 ErrorStatus status = SUCCESS;
<> 156:95d6b41a828b 156
<> 156:95d6b41a828b 157 /* Check the parameters */
<> 156:95d6b41a828b 158 assert_param(IS_COMP_ALL_INSTANCE(COMPx));
<> 156:95d6b41a828b 159
<> 156:95d6b41a828b 160 /* Note: Hardware constraint (refer to description of this function): */
<> 156:95d6b41a828b 161 /* COMP instance must not be locked. */
<> 156:95d6b41a828b 162 if(LL_COMP_IsLocked(COMPx) == 0U)
<> 156:95d6b41a828b 163 {
<> 156:95d6b41a828b 164 /* Note: Connection switch is applicable only to COMP instance COMP1, */
<> 156:95d6b41a828b 165 /* therefore is COMP2 is selected the equivalent bit is */
<> 156:95d6b41a828b 166 /* kept unmodified. */
<> 156:95d6b41a828b 167 if(COMPx == COMP1)
<> 156:95d6b41a828b 168 {
<> 156:95d6b41a828b 169 CLEAR_BIT(COMP->CSR,
<> 156:95d6b41a828b 170 ( COMP_CSR_COMP1MODE
<> 156:95d6b41a828b 171 | COMP_CSR_COMP1INSEL
<> 156:95d6b41a828b 172 | COMP_CSR_COMP1SW1
<> 156:95d6b41a828b 173 | COMP_CSR_COMP1OUTSEL
<> 156:95d6b41a828b 174 | COMP_CSR_COMP1HYST
<> 156:95d6b41a828b 175 | COMP_CSR_COMP1POL
<> 156:95d6b41a828b 176 | COMP_CSR_COMP1EN
<> 156:95d6b41a828b 177 ) << __COMP_BITOFFSET_INSTANCE(COMPx)
<> 156:95d6b41a828b 178 );
<> 156:95d6b41a828b 179 }
<> 156:95d6b41a828b 180 else
<> 156:95d6b41a828b 181 {
<> 156:95d6b41a828b 182 CLEAR_BIT(COMP->CSR,
<> 156:95d6b41a828b 183 ( COMP_CSR_COMP1MODE
<> 156:95d6b41a828b 184 | COMP_CSR_COMP1INSEL
<> 156:95d6b41a828b 185 | COMP_CSR_COMP1OUTSEL
<> 156:95d6b41a828b 186 | COMP_CSR_COMP1HYST
<> 156:95d6b41a828b 187 | COMP_CSR_COMP1POL
<> 156:95d6b41a828b 188 | COMP_CSR_COMP1EN
<> 156:95d6b41a828b 189 ) << __COMP_BITOFFSET_INSTANCE(COMPx)
<> 156:95d6b41a828b 190 );
<> 156:95d6b41a828b 191 }
<> 156:95d6b41a828b 192
<> 156:95d6b41a828b 193 }
<> 156:95d6b41a828b 194 else
<> 156:95d6b41a828b 195 {
<> 156:95d6b41a828b 196 /* Comparator instance is locked: de-initialization by software is */
<> 156:95d6b41a828b 197 /* not possible. */
<> 156:95d6b41a828b 198 /* The only way to unlock the comparator is a device hardware reset. */
<> 156:95d6b41a828b 199 status = ERROR;
<> 156:95d6b41a828b 200 }
<> 156:95d6b41a828b 201
<> 156:95d6b41a828b 202 return status;
<> 156:95d6b41a828b 203 }
<> 156:95d6b41a828b 204
<> 156:95d6b41a828b 205 /**
<> 156:95d6b41a828b 206 * @brief Initialize some features of COMP instance.
<> 156:95d6b41a828b 207 * @note This function configures features of the selected COMP instance.
<> 156:95d6b41a828b 208 * Some features are also available at scope COMP common instance
<> 156:95d6b41a828b 209 * (common to several COMP instances).
<> 156:95d6b41a828b 210 * Refer to functions having argument "COMPxy_COMMON" as parameter.
<> 156:95d6b41a828b 211 * @param COMPx COMP instance
<> 156:95d6b41a828b 212 * @param COMP_InitStruct Pointer to a @ref LL_COMP_InitTypeDef structure
<> 156:95d6b41a828b 213 * @retval An ErrorStatus enumeration value:
<> 156:95d6b41a828b 214 * - SUCCESS: COMP registers are initialized
<> 156:95d6b41a828b 215 * - ERROR: COMP registers are not initialized
<> 156:95d6b41a828b 216 */
<> 156:95d6b41a828b 217 ErrorStatus LL_COMP_Init(COMP_TypeDef *COMPx, LL_COMP_InitTypeDef *COMP_InitStruct)
<> 156:95d6b41a828b 218 {
<> 156:95d6b41a828b 219 ErrorStatus status = SUCCESS;
<> 156:95d6b41a828b 220
<> 156:95d6b41a828b 221 /* Check the parameters */
<> 156:95d6b41a828b 222 assert_param(IS_COMP_ALL_INSTANCE(COMPx));
<> 156:95d6b41a828b 223 assert_param(IS_LL_COMP_POWER_MODE(COMP_InitStruct->PowerMode));
<> 156:95d6b41a828b 224 assert_param(IS_LL_COMP_INPUT_PLUS(COMPx, COMP_InitStruct->InputPlus));
<> 156:95d6b41a828b 225 assert_param(IS_LL_COMP_INPUT_MINUS(COMPx, COMP_InitStruct->InputMinus));
<> 156:95d6b41a828b 226 assert_param(IS_LL_COMP_INPUT_HYSTERESIS(COMP_InitStruct->InputHysteresis));
<> 156:95d6b41a828b 227 assert_param(IS_LL_COMP_OUTPUT_SELECTION(COMP_InitStruct->OutputSelection));
<> 156:95d6b41a828b 228 assert_param(IS_LL_COMP_OUTPUT_POLARITY(COMP_InitStruct->OutputPolarity));
<> 156:95d6b41a828b 229
<> 156:95d6b41a828b 230 /* Note: Hardware constraint (refer to description of this function) */
<> 156:95d6b41a828b 231 /* COMP instance must not be locked. */
<> 156:95d6b41a828b 232 if(LL_COMP_IsLocked(COMPx) == 0U)
<> 156:95d6b41a828b 233 {
<> 156:95d6b41a828b 234 /* Configuration of comparator instance : */
<> 156:95d6b41a828b 235 /* - PowerMode */
<> 156:95d6b41a828b 236 /* - InputPlus */
<> 156:95d6b41a828b 237 /* - InputMinus */
<> 156:95d6b41a828b 238 /* - InputHysteresis */
<> 156:95d6b41a828b 239 /* - OutputSelection */
<> 156:95d6b41a828b 240 /* - OutputPolarity */
<> 156:95d6b41a828b 241 /* Note: Connection switch is applicable only to COMP instance COMP1, */
<> 156:95d6b41a828b 242 /* therefore is COMP2 is selected the equivalent bit is */
<> 156:95d6b41a828b 243 /* kept unmodified. */
<> 156:95d6b41a828b 244 if(COMPx == COMP1)
<> 156:95d6b41a828b 245 {
<> 156:95d6b41a828b 246 MODIFY_REG(COMP->CSR,
<> 156:95d6b41a828b 247 ( COMP_CSR_COMP1MODE
<> 156:95d6b41a828b 248 | COMP_CSR_COMP1INSEL
<> 156:95d6b41a828b 249 | COMP_CSR_COMP1SW1
<> 156:95d6b41a828b 250 | COMP_CSR_COMP1OUTSEL
<> 156:95d6b41a828b 251 | COMP_CSR_COMP1HYST
<> 156:95d6b41a828b 252 | COMP_CSR_COMP1POL
<> 156:95d6b41a828b 253 ) << __COMP_BITOFFSET_INSTANCE(COMPx)
<> 156:95d6b41a828b 254 ,
<> 156:95d6b41a828b 255 ( COMP_InitStruct->PowerMode
<> 156:95d6b41a828b 256 | COMP_InitStruct->InputPlus
<> 156:95d6b41a828b 257 | COMP_InitStruct->InputMinus
<> 156:95d6b41a828b 258 | COMP_InitStruct->InputHysteresis
<> 156:95d6b41a828b 259 | COMP_InitStruct->OutputSelection
<> 156:95d6b41a828b 260 | COMP_InitStruct->OutputPolarity
<> 156:95d6b41a828b 261 ) << __COMP_BITOFFSET_INSTANCE(COMPx)
<> 156:95d6b41a828b 262 );
<> 156:95d6b41a828b 263 }
<> 156:95d6b41a828b 264 else
<> 156:95d6b41a828b 265 {
<> 156:95d6b41a828b 266 MODIFY_REG(COMP->CSR,
<> 156:95d6b41a828b 267 ( COMP_CSR_COMP1MODE
<> 156:95d6b41a828b 268 | COMP_CSR_COMP1INSEL
<> 156:95d6b41a828b 269 | COMP_CSR_COMP1OUTSEL
<> 156:95d6b41a828b 270 | COMP_CSR_COMP1HYST
<> 156:95d6b41a828b 271 | COMP_CSR_COMP1POL
<> 156:95d6b41a828b 272 ) << __COMP_BITOFFSET_INSTANCE(COMPx)
<> 156:95d6b41a828b 273 ,
<> 156:95d6b41a828b 274 ( COMP_InitStruct->PowerMode
<> 156:95d6b41a828b 275 | COMP_InitStruct->InputPlus
<> 156:95d6b41a828b 276 | COMP_InitStruct->InputMinus
<> 156:95d6b41a828b 277 | COMP_InitStruct->InputHysteresis
<> 156:95d6b41a828b 278 | COMP_InitStruct->OutputSelection
<> 156:95d6b41a828b 279 | COMP_InitStruct->OutputPolarity
<> 156:95d6b41a828b 280 ) << __COMP_BITOFFSET_INSTANCE(COMPx)
<> 156:95d6b41a828b 281 );
<> 156:95d6b41a828b 282 }
<> 156:95d6b41a828b 283
<> 156:95d6b41a828b 284 }
<> 156:95d6b41a828b 285 else
<> 156:95d6b41a828b 286 {
<> 156:95d6b41a828b 287 /* Initialization error: COMP instance is locked. */
<> 156:95d6b41a828b 288 status = ERROR;
<> 156:95d6b41a828b 289 }
<> 156:95d6b41a828b 290
<> 156:95d6b41a828b 291 return status;
<> 156:95d6b41a828b 292 }
<> 156:95d6b41a828b 293
<> 156:95d6b41a828b 294 /**
<> 156:95d6b41a828b 295 * @brief Set each @ref LL_COMP_InitTypeDef field to default value.
Anna Bridge 180:96ed750bd169 296 * @param COMP_InitStruct pointer to a @ref LL_COMP_InitTypeDef structure
<> 156:95d6b41a828b 297 * whose fields will be set to default values.
<> 156:95d6b41a828b 298 * @retval None
<> 156:95d6b41a828b 299 */
<> 156:95d6b41a828b 300 void LL_COMP_StructInit(LL_COMP_InitTypeDef *COMP_InitStruct)
<> 156:95d6b41a828b 301 {
<> 156:95d6b41a828b 302 /* Set COMP_InitStruct fields to default values */
<> 156:95d6b41a828b 303 COMP_InitStruct->PowerMode = LL_COMP_POWERMODE_ULTRALOWPOWER;
<> 156:95d6b41a828b 304 COMP_InitStruct->InputPlus = LL_COMP_INPUT_PLUS_IO1;
<> 156:95d6b41a828b 305 COMP_InitStruct->InputMinus = LL_COMP_INPUT_MINUS_VREFINT;
<> 156:95d6b41a828b 306 COMP_InitStruct->InputHysteresis = LL_COMP_HYSTERESIS_NONE;
<> 156:95d6b41a828b 307 COMP_InitStruct->OutputSelection = LL_COMP_OUTPUT_NONE;
<> 156:95d6b41a828b 308 COMP_InitStruct->OutputPolarity = LL_COMP_OUTPUTPOL_NONINVERTED;
<> 156:95d6b41a828b 309 }
<> 156:95d6b41a828b 310
<> 156:95d6b41a828b 311 /**
<> 156:95d6b41a828b 312 * @}
<> 156:95d6b41a828b 313 */
<> 156:95d6b41a828b 314
<> 156:95d6b41a828b 315 /**
<> 156:95d6b41a828b 316 * @}
<> 156:95d6b41a828b 317 */
<> 156:95d6b41a828b 318
<> 156:95d6b41a828b 319 /**
<> 156:95d6b41a828b 320 * @}
<> 156:95d6b41a828b 321 */
<> 156:95d6b41a828b 322
<> 156:95d6b41a828b 323 #endif /* COMP1 || COMP2 */
<> 156:95d6b41a828b 324
<> 156:95d6b41a828b 325 /**
<> 156:95d6b41a828b 326 * @}
<> 156:95d6b41a828b 327 */
<> 156:95d6b41a828b 328
<> 156:95d6b41a828b 329 #endif /* USE_FULL_LL_DRIVER */
<> 156:95d6b41a828b 330
<> 156:95d6b41a828b 331 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/