]> git.sur5r.net Git - freertos/blob
5c4f6c848064719b2003ccf641f20fa1769219f3
[freertos] /
1 /**\r
2   ******************************************************************************\r
3   * @file    stm32l4xx_hal_flash_ex.h\r
4   * @author  MCD Application Team\r
5   * @brief   Header file of FLASH HAL Extended module.\r
6   ******************************************************************************\r
7   * @attention\r
8   *\r
9   * <h2><center>&copy; Copyright (c) 2017 STMicroelectronics.\r
10   * All rights reserved.</center></h2>\r
11   *\r
12   * This software component is licensed by ST under BSD 3-Clause license,\r
13   * the "License"; You may not use this file except in compliance with the\r
14   * License. You may obtain a copy of the License at:\r
15   *                       opensource.org/licenses/BSD-3-Clause\r
16   *\r
17   ******************************************************************************\r
18   */\r
19 \r
20 /* Define to prevent recursive inclusion -------------------------------------*/\r
21 #ifndef __STM32L4xx_HAL_FLASH_EX_H\r
22 #define __STM32L4xx_HAL_FLASH_EX_H\r
23 \r
24 #ifdef __cplusplus\r
25  extern "C" {\r
26 #endif\r
27 \r
28 /* Includes ------------------------------------------------------------------*/\r
29 #include "stm32l4xx_hal_def.h"\r
30 \r
31 /** @addtogroup STM32L4xx_HAL_Driver\r
32   * @{\r
33   */\r
34 \r
35 /** @addtogroup FLASHEx\r
36   * @{\r
37   */\r
38 \r
39 /* Exported types ------------------------------------------------------------*/\r
40 \r
41 /* Exported constants --------------------------------------------------------*/\r
42 #if defined (FLASH_CFGR_LVEN)\r
43 /** @addtogroup FLASHEx_Exported_Constants\r
44   * @{\r
45   */\r
46 /** @defgroup FLASHEx_LVE_PIN_CFG FLASHEx LVE pin configuration\r
47   * @{\r
48   */\r
49 #define FLASH_LVE_PIN_CTRL     0x00000000U       /*!< LVE FLASH pin controlled by power controller       */\r
50 #define FLASH_LVE_PIN_FORCED   FLASH_CFGR_LVEN   /*!< LVE FLASH pin enforced to low (external SMPS used) */\r
51 /**\r
52   * @}\r
53   */\r
54 \r
55 /**\r
56   * @}\r
57   */\r
58 #endif /* FLASH_CFGR_LVEN */\r
59 \r
60 /* Exported macro ------------------------------------------------------------*/\r
61 \r
62 /* Exported functions --------------------------------------------------------*/\r
63 /** @addtogroup FLASHEx_Exported_Functions\r
64   * @{\r
65   */\r
66 \r
67 /* Extended Program operation functions  *************************************/\r
68 /** @addtogroup FLASHEx_Exported_Functions_Group1\r
69   * @{\r
70   */\r
71 HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError);\r
72 HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit);\r
73 HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit);\r
74 void              HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit);\r
75 /**\r
76   * @}\r
77   */\r
78 \r
79 #if defined (FLASH_CFGR_LVEN)\r
80 /** @addtogroup FLASHEx_Exported_Functions_Group2\r
81   * @{\r
82   */\r
83 HAL_StatusTypeDef HAL_FLASHEx_ConfigLVEPin(uint32_t ConfigLVE);\r
84 /**\r
85   * @}\r
86   */\r
87 #endif /* FLASH_CFGR_LVEN */\r
88 \r
89 /**\r
90   * @}\r
91   */\r
92 \r
93 /* Private function ----------------------------------------------------------*/\r
94 /** @addtogroup FLASHEx_Private_Functions FLASHEx Private Functions\r
95  * @{\r
96  */\r
97 void FLASH_PageErase(uint32_t Page, uint32_t Banks);\r
98 void FLASH_FlushCaches(void);\r
99 /**\r
100   * @}\r
101   */\r
102 \r
103 /* Private macros ------------------------------------------------------------*/\r
104 /**\r
105   @cond 0\r
106   */\r
107 #if defined (FLASH_CFGR_LVEN)\r
108 #define IS_FLASH_LVE_PIN(CFG)  (((CFG) == FLASH_LVE_PIN_CTRL) || ((CFG) == FLASH_LVE_PIN_FORCED))\r
109 #endif /* FLASH_CFGR_LVEN */\r
110 /**\r
111   @endcond\r
112   */\r
113 \r
114 /**\r
115   * @}\r
116   */\r
117 \r
118 /**\r
119   * @}\r
120   */\r
121 \r
122 #ifdef __cplusplus\r
123 }\r
124 #endif\r
125 \r
126 #endif /* __STM32L4xx_HAL_FLASH_EX_H */\r
127 \r
128 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/\r