1*e8380792SMatthias Ringwald /** 2*e8380792SMatthias Ringwald ****************************************************************************** 3*e8380792SMatthias Ringwald * @file stm32l0xx_hal_conf.h 4*e8380792SMatthias Ringwald * @brief HAL configuration file. 5*e8380792SMatthias Ringwald ****************************************************************************** 6*e8380792SMatthias Ringwald * @attention 7*e8380792SMatthias Ringwald * 8*e8380792SMatthias Ringwald * <h2><center>© COPYRIGHT(c) 2019 STMicroelectronics</center></h2> 9*e8380792SMatthias Ringwald * 10*e8380792SMatthias Ringwald * Redistribution and use in source and binary forms, with or without modification, 11*e8380792SMatthias Ringwald * are permitted provided that the following conditions are met: 12*e8380792SMatthias Ringwald * 1. Redistributions of source code must retain the above copyright notice, 13*e8380792SMatthias Ringwald * this list of conditions and the following disclaimer. 14*e8380792SMatthias Ringwald * 2. Redistributions in binary form must reproduce the above copyright notice, 15*e8380792SMatthias Ringwald * this list of conditions and the following disclaimer in the documentation 16*e8380792SMatthias Ringwald * and/or other materials provided with the distribution. 17*e8380792SMatthias Ringwald * 3. Neither the name of STMicroelectronics nor the names of its contributors 18*e8380792SMatthias Ringwald * may be used to endorse or promote products derived from this software 19*e8380792SMatthias Ringwald * without specific prior written permission. 20*e8380792SMatthias Ringwald * 21*e8380792SMatthias Ringwald * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 22*e8380792SMatthias Ringwald * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23*e8380792SMatthias Ringwald * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 24*e8380792SMatthias Ringwald * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 25*e8380792SMatthias Ringwald * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26*e8380792SMatthias Ringwald * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 27*e8380792SMatthias Ringwald * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 28*e8380792SMatthias Ringwald * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 29*e8380792SMatthias Ringwald * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30*e8380792SMatthias Ringwald * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31*e8380792SMatthias Ringwald * 32*e8380792SMatthias Ringwald ****************************************************************************** 33*e8380792SMatthias Ringwald */ 34*e8380792SMatthias Ringwald 35*e8380792SMatthias Ringwald /* Define to prevent recursive inclusion -------------------------------------*/ 36*e8380792SMatthias Ringwald #ifndef __STM32L0xx_HAL_CONF_H 37*e8380792SMatthias Ringwald #define __STM32L0xx_HAL_CONF_H 38*e8380792SMatthias Ringwald 39*e8380792SMatthias Ringwald #ifdef __cplusplus 40*e8380792SMatthias Ringwald extern "C" { 41*e8380792SMatthias Ringwald #endif 42*e8380792SMatthias Ringwald 43*e8380792SMatthias Ringwald /* Exported types ------------------------------------------------------------*/ 44*e8380792SMatthias Ringwald /* Exported constants --------------------------------------------------------*/ 45*e8380792SMatthias Ringwald 46*e8380792SMatthias Ringwald /* ########################## Module Selection ############################## */ 47*e8380792SMatthias Ringwald /** 48*e8380792SMatthias Ringwald * @brief This is the list of modules to be used in the HAL driver 49*e8380792SMatthias Ringwald */ 50*e8380792SMatthias Ringwald 51*e8380792SMatthias Ringwald #define HAL_MODULE_ENABLED 52*e8380792SMatthias Ringwald /*#define HAL_ADC_MODULE_ENABLED */ 53*e8380792SMatthias Ringwald /*#define HAL_CRYP_MODULE_ENABLED */ 54*e8380792SMatthias Ringwald /*#define HAL_COMP_MODULE_ENABLED */ 55*e8380792SMatthias Ringwald /*#define HAL_CRC_MODULE_ENABLED */ 56*e8380792SMatthias Ringwald /*#define HAL_CRYP_MODULE_ENABLED */ 57*e8380792SMatthias Ringwald /*#define HAL_DAC_MODULE_ENABLED */ 58*e8380792SMatthias Ringwald /*#define HAL_FIREWALL_MODULE_ENABLED */ 59*e8380792SMatthias Ringwald /*#define HAL_I2S_MODULE_ENABLED */ 60*e8380792SMatthias Ringwald /*#define HAL_IWDG_MODULE_ENABLED */ 61*e8380792SMatthias Ringwald /*#define HAL_LCD_MODULE_ENABLED */ 62*e8380792SMatthias Ringwald /*#define HAL_LPTIM_MODULE_ENABLED */ 63*e8380792SMatthias Ringwald /*#define HAL_RNG_MODULE_ENABLED */ 64*e8380792SMatthias Ringwald /*#define HAL_RTC_MODULE_ENABLED */ 65*e8380792SMatthias Ringwald #define HAL_SPI_MODULE_ENABLED 66*e8380792SMatthias Ringwald /*#define HAL_TIM_MODULE_ENABLED */ 67*e8380792SMatthias Ringwald /*#define HAL_TSC_MODULE_ENABLED */ 68*e8380792SMatthias Ringwald #define HAL_UART_MODULE_ENABLED 69*e8380792SMatthias Ringwald /*#define HAL_USART_MODULE_ENABLED */ 70*e8380792SMatthias Ringwald /*#define HAL_IRDA_MODULE_ENABLED */ 71*e8380792SMatthias Ringwald /*#define HAL_SMARTCARD_MODULE_ENABLED */ 72*e8380792SMatthias Ringwald /*#define HAL_SMBUS_MODULE_ENABLED */ 73*e8380792SMatthias Ringwald /*#define HAL_WWDG_MODULE_ENABLED */ 74*e8380792SMatthias Ringwald /*#define HAL_PCD_MODULE_ENABLED */ 75*e8380792SMatthias Ringwald /*#define HAL_EXTI_MODULE_ENABLED */ 76*e8380792SMatthias Ringwald #define HAL_GPIO_MODULE_ENABLED 77*e8380792SMatthias Ringwald #define HAL_DMA_MODULE_ENABLED 78*e8380792SMatthias Ringwald #define HAL_I2C_MODULE_ENABLED 79*e8380792SMatthias Ringwald #define HAL_RCC_MODULE_ENABLED 80*e8380792SMatthias Ringwald #define HAL_FLASH_MODULE_ENABLED 81*e8380792SMatthias Ringwald #define HAL_PWR_MODULE_ENABLED 82*e8380792SMatthias Ringwald #define HAL_CORTEX_MODULE_ENABLED 83*e8380792SMatthias Ringwald 84*e8380792SMatthias Ringwald /* ########################## Oscillator Values adaptation ####################*/ 85*e8380792SMatthias Ringwald /** 86*e8380792SMatthias Ringwald * @brief Adjust the value of External High Speed oscillator (HSE) used in your application. 87*e8380792SMatthias Ringwald * This value is used by the RCC HAL module to compute the system frequency 88*e8380792SMatthias Ringwald * (when HSE is used as system clock source, directly or through the PLL). 89*e8380792SMatthias Ringwald */ 90*e8380792SMatthias Ringwald #if !defined (HSE_VALUE) 91*e8380792SMatthias Ringwald #define HSE_VALUE ((uint32_t)8000000U) /*!< Value of the External oscillator in Hz */ 92*e8380792SMatthias Ringwald #endif /* HSE_VALUE */ 93*e8380792SMatthias Ringwald 94*e8380792SMatthias Ringwald #if !defined (HSE_STARTUP_TIMEOUT) 95*e8380792SMatthias Ringwald #define HSE_STARTUP_TIMEOUT ((uint32_t)100U) /*!< Time out for HSE start up, in ms */ 96*e8380792SMatthias Ringwald #endif /* HSE_STARTUP_TIMEOUT */ 97*e8380792SMatthias Ringwald 98*e8380792SMatthias Ringwald /** 99*e8380792SMatthias Ringwald * @brief Internal Multiple Speed oscillator (MSI) default value. 100*e8380792SMatthias Ringwald * This value is the default MSI range value after Reset. 101*e8380792SMatthias Ringwald */ 102*e8380792SMatthias Ringwald #if !defined (MSI_VALUE) 103*e8380792SMatthias Ringwald #define MSI_VALUE ((uint32_t)2097000U) /*!< Value of the Internal oscillator in Hz*/ 104*e8380792SMatthias Ringwald #endif /* MSI_VALUE */ 105*e8380792SMatthias Ringwald 106*e8380792SMatthias Ringwald /** 107*e8380792SMatthias Ringwald * @brief Internal High Speed oscillator (HSI) value. 108*e8380792SMatthias Ringwald * This value is used by the RCC HAL module to compute the system frequency 109*e8380792SMatthias Ringwald * (when HSI is used as system clock source, directly or through the PLL). 110*e8380792SMatthias Ringwald */ 111*e8380792SMatthias Ringwald #if !defined (HSI_VALUE) 112*e8380792SMatthias Ringwald #define HSI_VALUE ((uint32_t)16000000U) /*!< Value of the Internal oscillator in Hz*/ 113*e8380792SMatthias Ringwald #endif /* HSI_VALUE */ 114*e8380792SMatthias Ringwald 115*e8380792SMatthias Ringwald /** 116*e8380792SMatthias Ringwald * @brief Internal High Speed oscillator for USB (HSI48) value. 117*e8380792SMatthias Ringwald */ 118*e8380792SMatthias Ringwald #if !defined (HSI48_VALUE) 119*e8380792SMatthias Ringwald #define HSI48_VALUE ((uint32_t)48000000U) /*!< Value of the Internal High Speed oscillator for USB in Hz. 120*e8380792SMatthias Ringwald The real value may vary depending on the variations 121*e8380792SMatthias Ringwald in voltage and temperature. */ 122*e8380792SMatthias Ringwald #endif /* HSI48_VALUE */ 123*e8380792SMatthias Ringwald 124*e8380792SMatthias Ringwald /** 125*e8380792SMatthias Ringwald * @brief Internal Low Speed oscillator (LSI) value. 126*e8380792SMatthias Ringwald */ 127*e8380792SMatthias Ringwald #if !defined (LSI_VALUE) 128*e8380792SMatthias Ringwald #define LSI_VALUE ((uint32_t)37000U) /*!< LSI Typical Value in Hz*/ 129*e8380792SMatthias Ringwald #endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz 130*e8380792SMatthias Ringwald The real value may vary depending on the variations 131*e8380792SMatthias Ringwald in voltage and temperature.*/ 132*e8380792SMatthias Ringwald /** 133*e8380792SMatthias Ringwald * @brief External Low Speed oscillator (LSE) value. 134*e8380792SMatthias Ringwald * This value is used by the UART, RTC HAL module to compute the system frequency 135*e8380792SMatthias Ringwald */ 136*e8380792SMatthias Ringwald #if !defined (LSE_VALUE) 137*e8380792SMatthias Ringwald #define LSE_VALUE ((uint32_t)32768U) /*!< Value of the External oscillator in Hz*/ 138*e8380792SMatthias Ringwald #endif /* LSE_VALUE */ 139*e8380792SMatthias Ringwald 140*e8380792SMatthias Ringwald #if !defined (LSE_STARTUP_TIMEOUT) 141*e8380792SMatthias Ringwald #define LSE_STARTUP_TIMEOUT ((uint32_t)5000U) /*!< Time out for LSE start up, in ms */ 142*e8380792SMatthias Ringwald #endif /* LSE_STARTUP_TIMEOUT */ 143*e8380792SMatthias Ringwald 144*e8380792SMatthias Ringwald /* Tip: To avoid modifying this file each time you need to use different HSE, 145*e8380792SMatthias Ringwald === you can define the HSE value in your toolchain compiler preprocessor. */ 146*e8380792SMatthias Ringwald 147*e8380792SMatthias Ringwald /* ########################### System Configuration ######################### */ 148*e8380792SMatthias Ringwald /** 149*e8380792SMatthias Ringwald * @brief This is the HAL system configuration section 150*e8380792SMatthias Ringwald */ 151*e8380792SMatthias Ringwald #define VDD_VALUE ((uint32_t)3300U) /*!< Value of VDD in mv */ 152*e8380792SMatthias Ringwald #define TICK_INT_PRIORITY ((uint32_t)0U) /*!< tick interrupt priority */ 153*e8380792SMatthias Ringwald #define USE_RTOS 0U 154*e8380792SMatthias Ringwald #define PREFETCH_ENABLE 0U 155*e8380792SMatthias Ringwald #define PREREAD_ENABLE 1U 156*e8380792SMatthias Ringwald #define BUFFER_CACHE_DISABLE 0U 157*e8380792SMatthias Ringwald 158*e8380792SMatthias Ringwald /* ########################## Assert Selection ############################## */ 159*e8380792SMatthias Ringwald /** 160*e8380792SMatthias Ringwald * @brief Uncomment the line below to expanse the "assert_param" macro in the 161*e8380792SMatthias Ringwald * HAL drivers code 162*e8380792SMatthias Ringwald */ 163*e8380792SMatthias Ringwald /* #define USE_FULL_ASSERT 1U */ 164*e8380792SMatthias Ringwald 165*e8380792SMatthias Ringwald /* Includes ------------------------------------------------------------------*/ 166*e8380792SMatthias Ringwald /** 167*e8380792SMatthias Ringwald * @brief Include module's header file 168*e8380792SMatthias Ringwald */ 169*e8380792SMatthias Ringwald 170*e8380792SMatthias Ringwald #ifdef HAL_RCC_MODULE_ENABLED 171*e8380792SMatthias Ringwald #include "stm32l0xx_hal_rcc.h" 172*e8380792SMatthias Ringwald #endif /* HAL_RCC_MODULE_ENABLED */ 173*e8380792SMatthias Ringwald 174*e8380792SMatthias Ringwald #ifdef HAL_EXTI_MODULE_ENABLED 175*e8380792SMatthias Ringwald #include "stm32l0xx_hal_exti.h" 176*e8380792SMatthias Ringwald #endif /* HAL_EXTI_MODULE_ENABLED */ 177*e8380792SMatthias Ringwald 178*e8380792SMatthias Ringwald #ifdef HAL_GPIO_MODULE_ENABLED 179*e8380792SMatthias Ringwald #include "stm32l0xx_hal_gpio.h" 180*e8380792SMatthias Ringwald #endif /* HAL_GPIO_MODULE_ENABLED */ 181*e8380792SMatthias Ringwald 182*e8380792SMatthias Ringwald #ifdef HAL_DMA_MODULE_ENABLED 183*e8380792SMatthias Ringwald #include "stm32l0xx_hal_dma.h" 184*e8380792SMatthias Ringwald #endif /* HAL_DMA_MODULE_ENABLED */ 185*e8380792SMatthias Ringwald 186*e8380792SMatthias Ringwald #ifdef HAL_CORTEX_MODULE_ENABLED 187*e8380792SMatthias Ringwald #include "stm32l0xx_hal_cortex.h" 188*e8380792SMatthias Ringwald #endif /* HAL_CORTEX_MODULE_ENABLED */ 189*e8380792SMatthias Ringwald 190*e8380792SMatthias Ringwald #ifdef HAL_ADC_MODULE_ENABLED 191*e8380792SMatthias Ringwald #include "stm32l0xx_hal_adc.h" 192*e8380792SMatthias Ringwald #endif /* HAL_ADC_MODULE_ENABLED */ 193*e8380792SMatthias Ringwald 194*e8380792SMatthias Ringwald #ifdef HAL_COMP_MODULE_ENABLED 195*e8380792SMatthias Ringwald #include "stm32l0xx_hal_comp.h" 196*e8380792SMatthias Ringwald #endif /* HAL_COMP_MODULE_ENABLED */ 197*e8380792SMatthias Ringwald 198*e8380792SMatthias Ringwald #ifdef HAL_CRC_MODULE_ENABLED 199*e8380792SMatthias Ringwald #include "stm32l0xx_hal_crc.h" 200*e8380792SMatthias Ringwald #endif /* HAL_CRC_MODULE_ENABLED */ 201*e8380792SMatthias Ringwald 202*e8380792SMatthias Ringwald #ifdef HAL_CRYP_MODULE_ENABLED 203*e8380792SMatthias Ringwald #include "stm32l0xx_hal_cryp.h" 204*e8380792SMatthias Ringwald #endif /* HAL_CRYP_MODULE_ENABLED */ 205*e8380792SMatthias Ringwald 206*e8380792SMatthias Ringwald #ifdef HAL_DAC_MODULE_ENABLED 207*e8380792SMatthias Ringwald #include "stm32l0xx_hal_dac.h" 208*e8380792SMatthias Ringwald #endif /* HAL_DAC_MODULE_ENABLED */ 209*e8380792SMatthias Ringwald 210*e8380792SMatthias Ringwald #ifdef HAL_FIREWALL_MODULE_ENABLED 211*e8380792SMatthias Ringwald #include "stm32l0xx_hal_firewall.h" 212*e8380792SMatthias Ringwald #endif /* HAL_FIREWALL_MODULE_ENABLED */ 213*e8380792SMatthias Ringwald 214*e8380792SMatthias Ringwald #ifdef HAL_FLASH_MODULE_ENABLED 215*e8380792SMatthias Ringwald #include "stm32l0xx_hal_flash.h" 216*e8380792SMatthias Ringwald #endif /* HAL_FLASH_MODULE_ENABLED */ 217*e8380792SMatthias Ringwald 218*e8380792SMatthias Ringwald #ifdef HAL_I2C_MODULE_ENABLED 219*e8380792SMatthias Ringwald #include "stm32l0xx_hal_i2c.h" 220*e8380792SMatthias Ringwald #endif /* HAL_I2C_MODULE_ENABLED */ 221*e8380792SMatthias Ringwald 222*e8380792SMatthias Ringwald #ifdef HAL_I2S_MODULE_ENABLED 223*e8380792SMatthias Ringwald #include "stm32l0xx_hal_i2s.h" 224*e8380792SMatthias Ringwald #endif /* HAL_I2S_MODULE_ENABLED */ 225*e8380792SMatthias Ringwald 226*e8380792SMatthias Ringwald #ifdef HAL_IWDG_MODULE_ENABLED 227*e8380792SMatthias Ringwald #include "stm32l0xx_hal_iwdg.h" 228*e8380792SMatthias Ringwald #endif /* HAL_IWDG_MODULE_ENABLED */ 229*e8380792SMatthias Ringwald 230*e8380792SMatthias Ringwald #ifdef HAL_LCD_MODULE_ENABLED 231*e8380792SMatthias Ringwald #include "stm32l0xx_hal_lcd.h" 232*e8380792SMatthias Ringwald #endif /* HAL_LCD_MODULE_ENABLED */ 233*e8380792SMatthias Ringwald 234*e8380792SMatthias Ringwald #ifdef HAL_LPTIM_MODULE_ENABLED 235*e8380792SMatthias Ringwald #include "stm32l0xx_hal_lptim.h" 236*e8380792SMatthias Ringwald #endif /* HAL_LPTIM_MODULE_ENABLED */ 237*e8380792SMatthias Ringwald 238*e8380792SMatthias Ringwald #ifdef HAL_PWR_MODULE_ENABLED 239*e8380792SMatthias Ringwald #include "stm32l0xx_hal_pwr.h" 240*e8380792SMatthias Ringwald #endif /* HAL_PWR_MODULE_ENABLED */ 241*e8380792SMatthias Ringwald 242*e8380792SMatthias Ringwald #ifdef HAL_RNG_MODULE_ENABLED 243*e8380792SMatthias Ringwald #include "stm32l0xx_hal_rng.h" 244*e8380792SMatthias Ringwald #endif /* HAL_RNG_MODULE_ENABLED */ 245*e8380792SMatthias Ringwald 246*e8380792SMatthias Ringwald #ifdef HAL_RTC_MODULE_ENABLED 247*e8380792SMatthias Ringwald #include "stm32l0xx_hal_rtc.h" 248*e8380792SMatthias Ringwald 249*e8380792SMatthias Ringwald #endif /* HAL_RTC_MODULE_ENABLED */ 250*e8380792SMatthias Ringwald 251*e8380792SMatthias Ringwald #ifdef HAL_SPI_MODULE_ENABLED 252*e8380792SMatthias Ringwald #include "stm32l0xx_hal_spi.h" 253*e8380792SMatthias Ringwald #endif /* HAL_SPI_MODULE_ENABLED */ 254*e8380792SMatthias Ringwald 255*e8380792SMatthias Ringwald #ifdef HAL_TIM_MODULE_ENABLED 256*e8380792SMatthias Ringwald #include "stm32l0xx_hal_tim.h" 257*e8380792SMatthias Ringwald #endif /* HAL_TIM_MODULE_ENABLED */ 258*e8380792SMatthias Ringwald 259*e8380792SMatthias Ringwald #ifdef HAL_TSC_MODULE_ENABLED 260*e8380792SMatthias Ringwald #include "stm32l0xx_hal_tsc.h" 261*e8380792SMatthias Ringwald #endif /* HAL_TSC_MODULE_ENABLED */ 262*e8380792SMatthias Ringwald 263*e8380792SMatthias Ringwald #ifdef HAL_UART_MODULE_ENABLED 264*e8380792SMatthias Ringwald #include "stm32l0xx_hal_uart.h" 265*e8380792SMatthias Ringwald #endif /* HAL_UART_MODULE_ENABLED */ 266*e8380792SMatthias Ringwald 267*e8380792SMatthias Ringwald #ifdef HAL_USART_MODULE_ENABLED 268*e8380792SMatthias Ringwald #include "stm32l0xx_hal_usart.h" 269*e8380792SMatthias Ringwald #endif /* HAL_USART_MODULE_ENABLED */ 270*e8380792SMatthias Ringwald 271*e8380792SMatthias Ringwald #ifdef HAL_IRDA_MODULE_ENABLED 272*e8380792SMatthias Ringwald #include "stm32l0xx_hal_irda.h" 273*e8380792SMatthias Ringwald #endif /* HAL_IRDA_MODULE_ENABLED */ 274*e8380792SMatthias Ringwald 275*e8380792SMatthias Ringwald #ifdef HAL_SMARTCARD_MODULE_ENABLED 276*e8380792SMatthias Ringwald #include "stm32l0xx_hal_smartcard.h" 277*e8380792SMatthias Ringwald #endif /* HAL_SMARTCARD_MODULE_ENABLED */ 278*e8380792SMatthias Ringwald 279*e8380792SMatthias Ringwald #ifdef HAL_SMBUS_MODULE_ENABLED 280*e8380792SMatthias Ringwald #include "stm32l0xx_hal_smbus.h" 281*e8380792SMatthias Ringwald #endif /* HAL_SMBUS_MODULE_ENABLED */ 282*e8380792SMatthias Ringwald 283*e8380792SMatthias Ringwald #ifdef HAL_WWDG_MODULE_ENABLED 284*e8380792SMatthias Ringwald #include "stm32l0xx_hal_wwdg.h" 285*e8380792SMatthias Ringwald #endif /* HAL_WWDG_MODULE_ENABLED */ 286*e8380792SMatthias Ringwald 287*e8380792SMatthias Ringwald #ifdef HAL_PCD_MODULE_ENABLED 288*e8380792SMatthias Ringwald #include "stm32l0xx_hal_pcd.h" 289*e8380792SMatthias Ringwald #endif /* HAL_PCD_MODULE_ENABLED */ 290*e8380792SMatthias Ringwald 291*e8380792SMatthias Ringwald /* Exported macro ------------------------------------------------------------*/ 292*e8380792SMatthias Ringwald #ifdef USE_FULL_ASSERT 293*e8380792SMatthias Ringwald /** 294*e8380792SMatthias Ringwald * @brief The assert_param macro is used for function's parameters check. 295*e8380792SMatthias Ringwald * @param expr: If expr is false, it calls assert_failed function 296*e8380792SMatthias Ringwald * which reports the name of the source file and the source 297*e8380792SMatthias Ringwald * line number of the call that failed. 298*e8380792SMatthias Ringwald * If expr is true, it returns no value. 299*e8380792SMatthias Ringwald * @retval None 300*e8380792SMatthias Ringwald */ 301*e8380792SMatthias Ringwald #define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__)) 302*e8380792SMatthias Ringwald /* Exported functions ------------------------------------------------------- */ 303*e8380792SMatthias Ringwald void assert_failed(uint8_t* file, uint32_t line); 304*e8380792SMatthias Ringwald #else 305*e8380792SMatthias Ringwald #define assert_param(expr) ((void)0U) 306*e8380792SMatthias Ringwald #endif /* USE_FULL_ASSERT */ 307*e8380792SMatthias Ringwald 308*e8380792SMatthias Ringwald #ifdef __cplusplus 309*e8380792SMatthias Ringwald } 310*e8380792SMatthias Ringwald #endif 311*e8380792SMatthias Ringwald 312*e8380792SMatthias Ringwald #endif /* __STM32L0xx_HAL_CONF_H */ 313*e8380792SMatthias Ringwald 314*e8380792SMatthias Ringwald 315*e8380792SMatthias Ringwald /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 316