F1 and F3 HAL / LL libraries
[betaflight.git] / lib / main / STM32F1 / Drivers / STM32F1xx_HAL_Driver / Inc / stm32_assert_template.h
blobc3c3dce51aaba7ccaa121ce9feddd1d8eab8379b
1 /**
2 ******************************************************************************
3 * @file stm32_assert.h
4 * @author MCD Application Team
5 * @version V1.1.1
6 * @date 12-May-2017
7 * @brief STM32 assert template file.
8 * This file should be copied to the application folder and renamed
9 * to stm32_assert.h.
10 ******************************************************************************
11 * @attention
13 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
15 * Redistribution and use in source and binary forms, with or without modification,
16 * are permitted provided that the following conditions are met:
17 * 1. Redistributions of source code must retain the above copyright notice,
18 * this list of conditions and the following disclaimer.
19 * 2. Redistributions in binary form must reproduce the above copyright notice,
20 * this list of conditions and the following disclaimer in the documentation
21 * and/or other materials provided with the distribution.
22 * 3. Neither the name of STMicroelectronics nor the names of its contributors
23 * may be used to endorse or promote products derived from this software
24 * without specific prior written permission.
26 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
27 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
29 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
30 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
32 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
33 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
34 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37 ******************************************************************************
40 /* Define to prevent recursive inclusion -------------------------------------*/
41 #ifndef __STM32_ASSERT_H
42 #define __STM32_ASSERT_H
44 #ifdef __cplusplus
45 extern "C" {
46 #endif
48 /* Exported types ------------------------------------------------------------*/
49 /* Exported constants --------------------------------------------------------*/
50 /* Includes ------------------------------------------------------------------*/
51 /* Exported macro ------------------------------------------------------------*/
52 #ifdef USE_FULL_ASSERT
53 /**
54 * @brief The assert_param macro is used for function's parameters check.
55 * @param expr: If expr is false, it calls assert_failed function
56 * which reports the name of the source file and the source
57 * line number of the call that failed.
58 * If expr is true, it returns no value.
59 * @retval None
61 #define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__))
62 /* Exported functions ------------------------------------------------------- */
63 void assert_failed(uint8_t* file, uint32_t line);
64 #else
65 #define assert_param(expr) ((void)0U)
66 #endif /* USE_FULL_ASSERT */
68 #ifdef __cplusplus
70 #endif
72 #endif /* __STM32_ASSERT_H */
75 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/