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

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Wed Jun 21 17:31:38 2017 +0100
Revision:
145:64910690c574
Parent:
128:9bcdf88f62b0
Release 145 of the mbed library.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 122:f9eeca106725 1 /**
Kojto 122:f9eeca106725 2 ******************************************************************************
Kojto 122:f9eeca106725 3 * @file stm32l4xx_hal.h
Kojto 122:f9eeca106725 4 * @author MCD Application Team
AnnaBridge 145:64910690c574 5 * @version V1.7.1
AnnaBridge 145:64910690c574 6 * @date 21-April-2017
Kojto 122:f9eeca106725 7 * @brief This file contains all the functions prototypes for the HAL
Kojto 122:f9eeca106725 8 * module driver.
Kojto 122:f9eeca106725 9 ******************************************************************************
Kojto 122:f9eeca106725 10 * @attention
Kojto 122:f9eeca106725 11 *
AnnaBridge 145:64910690c574 12 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
Kojto 122:f9eeca106725 13 *
Kojto 122:f9eeca106725 14 * Redistribution and use in source and binary forms, with or without modification,
Kojto 122:f9eeca106725 15 * are permitted provided that the following conditions are met:
Kojto 122:f9eeca106725 16 * 1. Redistributions of source code must retain the above copyright notice,
Kojto 122:f9eeca106725 17 * this list of conditions and the following disclaimer.
Kojto 122:f9eeca106725 18 * 2. Redistributions in binary form must reproduce the above copyright notice,
Kojto 122:f9eeca106725 19 * this list of conditions and the following disclaimer in the documentation
Kojto 122:f9eeca106725 20 * and/or other materials provided with the distribution.
Kojto 122:f9eeca106725 21 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Kojto 122:f9eeca106725 22 * may be used to endorse or promote products derived from this software
Kojto 122:f9eeca106725 23 * without specific prior written permission.
Kojto 122:f9eeca106725 24 *
Kojto 122:f9eeca106725 25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Kojto 122:f9eeca106725 26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Kojto 122:f9eeca106725 27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Kojto 122:f9eeca106725 28 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Kojto 122:f9eeca106725 29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Kojto 122:f9eeca106725 30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Kojto 122:f9eeca106725 31 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Kojto 122:f9eeca106725 32 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Kojto 122:f9eeca106725 33 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Kojto 122:f9eeca106725 34 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Kojto 122:f9eeca106725 35 *
Kojto 122:f9eeca106725 36 ******************************************************************************
Kojto 122:f9eeca106725 37 */
Kojto 122:f9eeca106725 38
Kojto 122:f9eeca106725 39 /* Define to prevent recursive inclusion -------------------------------------*/
Kojto 122:f9eeca106725 40 #ifndef __STM32L4xx_HAL_H
Kojto 122:f9eeca106725 41 #define __STM32L4xx_HAL_H
Kojto 122:f9eeca106725 42
Kojto 122:f9eeca106725 43 #ifdef __cplusplus
Kojto 122:f9eeca106725 44 extern "C" {
Kojto 122:f9eeca106725 45 #endif
Kojto 122:f9eeca106725 46
Kojto 122:f9eeca106725 47 /* Includes ------------------------------------------------------------------*/
Kojto 122:f9eeca106725 48 #include "stm32l4xx_hal_conf.h"
Kojto 122:f9eeca106725 49
Kojto 122:f9eeca106725 50 /** @addtogroup STM32L4xx_HAL_Driver
Kojto 122:f9eeca106725 51 * @{
Kojto 122:f9eeca106725 52 */
Kojto 122:f9eeca106725 53
Kojto 122:f9eeca106725 54 /** @addtogroup HAL
Kojto 122:f9eeca106725 55 * @{
Kojto 122:f9eeca106725 56 */
Kojto 122:f9eeca106725 57
Kojto 122:f9eeca106725 58 /* Exported types ------------------------------------------------------------*/
Kojto 122:f9eeca106725 59 /* Exported constants --------------------------------------------------------*/
Kojto 122:f9eeca106725 60 /** @defgroup SYSCFG_Exported_Constants SYSCFG Exported Constants
Kojto 122:f9eeca106725 61 * @{
Kojto 122:f9eeca106725 62 */
Kojto 122:f9eeca106725 63
Kojto 122:f9eeca106725 64 /** @defgroup SYSCFG_BootMode Boot Mode
Kojto 122:f9eeca106725 65 * @{
Kojto 122:f9eeca106725 66 */
Kojto 122:f9eeca106725 67 #define SYSCFG_BOOT_MAINFLASH ((uint32_t)0x00000000)
Kojto 122:f9eeca106725 68 #define SYSCFG_BOOT_SYSTEMFLASH SYSCFG_MEMRMP_MEM_MODE_0
AnnaBridge 145:64910690c574 69
AnnaBridge 145:64910690c574 70 #if defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) || \
AnnaBridge 145:64910690c574 71 defined (STM32L496xx) || defined (STM32L4A6xx)
Kojto 122:f9eeca106725 72 #define SYSCFG_BOOT_FMC SYSCFG_MEMRMP_MEM_MODE_1
AnnaBridge 145:64910690c574 73 #endif /* STM32L471xx || STM32L475xx || STM32L476xx || STM32L485xx || STM32L486xx || */
AnnaBridge 145:64910690c574 74 /* STM32L496xx || STM32L4A6xx */
AnnaBridge 145:64910690c574 75
Kojto 122:f9eeca106725 76 #define SYSCFG_BOOT_SRAM (SYSCFG_MEMRMP_MEM_MODE_1 | SYSCFG_MEMRMP_MEM_MODE_0)
AnnaBridge 145:64910690c574 77
Kojto 122:f9eeca106725 78 #define SYSCFG_BOOT_QUADSPI (SYSCFG_MEMRMP_MEM_MODE_2 | SYSCFG_MEMRMP_MEM_MODE_1)
Kojto 122:f9eeca106725 79
Kojto 122:f9eeca106725 80 /**
Kojto 122:f9eeca106725 81 * @}
Kojto 122:f9eeca106725 82 */
Kojto 122:f9eeca106725 83
Kojto 122:f9eeca106725 84 /** @defgroup SYSCFG_FPU_Interrupts FPU Interrupts
Kojto 122:f9eeca106725 85 * @{
Kojto 122:f9eeca106725 86 */
Kojto 122:f9eeca106725 87 #define SYSCFG_IT_FPU_IOC SYSCFG_CFGR1_FPU_IE_0 /*!< Floating Point Unit Invalid operation Interrupt */
Kojto 122:f9eeca106725 88 #define SYSCFG_IT_FPU_DZC SYSCFG_CFGR1_FPU_IE_1 /*!< Floating Point Unit Divide-by-zero Interrupt */
Kojto 122:f9eeca106725 89 #define SYSCFG_IT_FPU_UFC SYSCFG_CFGR1_FPU_IE_2 /*!< Floating Point Unit Underflow Interrupt */
Kojto 122:f9eeca106725 90 #define SYSCFG_IT_FPU_OFC SYSCFG_CFGR1_FPU_IE_3 /*!< Floating Point Unit Overflow Interrupt */
Kojto 122:f9eeca106725 91 #define SYSCFG_IT_FPU_IDC SYSCFG_CFGR1_FPU_IE_4 /*!< Floating Point Unit Input denormal Interrupt */
Kojto 122:f9eeca106725 92 #define SYSCFG_IT_FPU_IXC SYSCFG_CFGR1_FPU_IE_5 /*!< Floating Point Unit Inexact Interrupt */
Kojto 122:f9eeca106725 93
Kojto 122:f9eeca106725 94 /**
Kojto 122:f9eeca106725 95 * @}
Kojto 122:f9eeca106725 96 */
Kojto 122:f9eeca106725 97
AnnaBridge 145:64910690c574 98 /** @defgroup SYSCFG_SRAM2WRP SRAM2 Page Write protection (0 to 31)
Kojto 122:f9eeca106725 99 * @{
Kojto 122:f9eeca106725 100 */
Kojto 122:f9eeca106725 101 #define SYSCFG_SRAM2WRP_PAGE0 SYSCFG_SWPR_PAGE0 /*!< SRAM2 Write protection page 0 */
Kojto 122:f9eeca106725 102 #define SYSCFG_SRAM2WRP_PAGE1 SYSCFG_SWPR_PAGE1 /*!< SRAM2 Write protection page 1 */
Kojto 122:f9eeca106725 103 #define SYSCFG_SRAM2WRP_PAGE2 SYSCFG_SWPR_PAGE2 /*!< SRAM2 Write protection page 2 */
Kojto 122:f9eeca106725 104 #define SYSCFG_SRAM2WRP_PAGE3 SYSCFG_SWPR_PAGE3 /*!< SRAM2 Write protection page 3 */
Kojto 122:f9eeca106725 105 #define SYSCFG_SRAM2WRP_PAGE4 SYSCFG_SWPR_PAGE4 /*!< SRAM2 Write protection page 4 */
Kojto 122:f9eeca106725 106 #define SYSCFG_SRAM2WRP_PAGE5 SYSCFG_SWPR_PAGE5 /*!< SRAM2 Write protection page 5 */
Kojto 122:f9eeca106725 107 #define SYSCFG_SRAM2WRP_PAGE6 SYSCFG_SWPR_PAGE6 /*!< SRAM2 Write protection page 6 */
Kojto 122:f9eeca106725 108 #define SYSCFG_SRAM2WRP_PAGE7 SYSCFG_SWPR_PAGE7 /*!< SRAM2 Write protection page 7 */
Kojto 122:f9eeca106725 109 #define SYSCFG_SRAM2WRP_PAGE8 SYSCFG_SWPR_PAGE8 /*!< SRAM2 Write protection page 8 */
Kojto 122:f9eeca106725 110 #define SYSCFG_SRAM2WRP_PAGE9 SYSCFG_SWPR_PAGE9 /*!< SRAM2 Write protection page 9 */
Kojto 122:f9eeca106725 111 #define SYSCFG_SRAM2WRP_PAGE10 SYSCFG_SWPR_PAGE10 /*!< SRAM2 Write protection page 10 */
Kojto 122:f9eeca106725 112 #define SYSCFG_SRAM2WRP_PAGE11 SYSCFG_SWPR_PAGE11 /*!< SRAM2 Write protection page 11 */
Kojto 122:f9eeca106725 113 #define SYSCFG_SRAM2WRP_PAGE12 SYSCFG_SWPR_PAGE12 /*!< SRAM2 Write protection page 12 */
Kojto 122:f9eeca106725 114 #define SYSCFG_SRAM2WRP_PAGE13 SYSCFG_SWPR_PAGE13 /*!< SRAM2 Write protection page 13 */
Kojto 122:f9eeca106725 115 #define SYSCFG_SRAM2WRP_PAGE14 SYSCFG_SWPR_PAGE14 /*!< SRAM2 Write protection page 14 */
Kojto 122:f9eeca106725 116 #define SYSCFG_SRAM2WRP_PAGE15 SYSCFG_SWPR_PAGE15 /*!< SRAM2 Write protection page 15 */
AnnaBridge 145:64910690c574 117 #if defined(SYSCFG_SWPR_PAGE31)
Kojto 122:f9eeca106725 118 #define SYSCFG_SRAM2WRP_PAGE16 SYSCFG_SWPR_PAGE16 /*!< SRAM2 Write protection page 16 */
Kojto 122:f9eeca106725 119 #define SYSCFG_SRAM2WRP_PAGE17 SYSCFG_SWPR_PAGE17 /*!< SRAM2 Write protection page 17 */
Kojto 122:f9eeca106725 120 #define SYSCFG_SRAM2WRP_PAGE18 SYSCFG_SWPR_PAGE18 /*!< SRAM2 Write protection page 18 */
Kojto 122:f9eeca106725 121 #define SYSCFG_SRAM2WRP_PAGE19 SYSCFG_SWPR_PAGE19 /*!< SRAM2 Write protection page 19 */
Kojto 122:f9eeca106725 122 #define SYSCFG_SRAM2WRP_PAGE20 SYSCFG_SWPR_PAGE20 /*!< SRAM2 Write protection page 20 */
Kojto 122:f9eeca106725 123 #define SYSCFG_SRAM2WRP_PAGE21 SYSCFG_SWPR_PAGE21 /*!< SRAM2 Write protection page 21 */
Kojto 122:f9eeca106725 124 #define SYSCFG_SRAM2WRP_PAGE22 SYSCFG_SWPR_PAGE22 /*!< SRAM2 Write protection page 22 */
Kojto 122:f9eeca106725 125 #define SYSCFG_SRAM2WRP_PAGE23 SYSCFG_SWPR_PAGE23 /*!< SRAM2 Write protection page 23 */
Kojto 122:f9eeca106725 126 #define SYSCFG_SRAM2WRP_PAGE24 SYSCFG_SWPR_PAGE24 /*!< SRAM2 Write protection page 24 */
Kojto 122:f9eeca106725 127 #define SYSCFG_SRAM2WRP_PAGE25 SYSCFG_SWPR_PAGE25 /*!< SRAM2 Write protection page 25 */
Kojto 122:f9eeca106725 128 #define SYSCFG_SRAM2WRP_PAGE26 SYSCFG_SWPR_PAGE26 /*!< SRAM2 Write protection page 26 */
Kojto 122:f9eeca106725 129 #define SYSCFG_SRAM2WRP_PAGE27 SYSCFG_SWPR_PAGE27 /*!< SRAM2 Write protection page 27 */
Kojto 122:f9eeca106725 130 #define SYSCFG_SRAM2WRP_PAGE28 SYSCFG_SWPR_PAGE28 /*!< SRAM2 Write protection page 28 */
Kojto 122:f9eeca106725 131 #define SYSCFG_SRAM2WRP_PAGE29 SYSCFG_SWPR_PAGE29 /*!< SRAM2 Write protection page 29 */
Kojto 122:f9eeca106725 132 #define SYSCFG_SRAM2WRP_PAGE30 SYSCFG_SWPR_PAGE30 /*!< SRAM2 Write protection page 30 */
Kojto 122:f9eeca106725 133 #define SYSCFG_SRAM2WRP_PAGE31 SYSCFG_SWPR_PAGE31 /*!< SRAM2 Write protection page 31 */
AnnaBridge 145:64910690c574 134 #endif /* SYSCFG_SWPR_PAGE31 */
Kojto 122:f9eeca106725 135
Kojto 122:f9eeca106725 136 /**
Kojto 122:f9eeca106725 137 * @}
Kojto 122:f9eeca106725 138 */
Kojto 122:f9eeca106725 139
AnnaBridge 145:64910690c574 140 #if defined(SYSCFG_SWPR2_PAGE63)
AnnaBridge 145:64910690c574 141 /** @defgroup SYSCFG_SRAM2WRP_32_63 SRAM2 Page Write protection (32 to 63)
AnnaBridge 145:64910690c574 142 * @{
AnnaBridge 145:64910690c574 143 */
AnnaBridge 145:64910690c574 144 #define SYSCFG_SRAM2WRP_PAGE32 SYSCFG_SWPR2_PAGE32 /*!< SRAM2 Write protection page 32 */
AnnaBridge 145:64910690c574 145 #define SYSCFG_SRAM2WRP_PAGE33 SYSCFG_SWPR2_PAGE33 /*!< SRAM2 Write protection page 33 */
AnnaBridge 145:64910690c574 146 #define SYSCFG_SRAM2WRP_PAGE34 SYSCFG_SWPR2_PAGE34 /*!< SRAM2 Write protection page 34 */
AnnaBridge 145:64910690c574 147 #define SYSCFG_SRAM2WRP_PAGE35 SYSCFG_SWPR2_PAGE35 /*!< SRAM2 Write protection page 35 */
AnnaBridge 145:64910690c574 148 #define SYSCFG_SRAM2WRP_PAGE36 SYSCFG_SWPR2_PAGE36 /*!< SRAM2 Write protection page 36 */
AnnaBridge 145:64910690c574 149 #define SYSCFG_SRAM2WRP_PAGE37 SYSCFG_SWPR2_PAGE37 /*!< SRAM2 Write protection page 37 */
AnnaBridge 145:64910690c574 150 #define SYSCFG_SRAM2WRP_PAGE38 SYSCFG_SWPR2_PAGE38 /*!< SRAM2 Write protection page 38 */
AnnaBridge 145:64910690c574 151 #define SYSCFG_SRAM2WRP_PAGE39 SYSCFG_SWPR2_PAGE39 /*!< SRAM2 Write protection page 39 */
AnnaBridge 145:64910690c574 152 #define SYSCFG_SRAM2WRP_PAGE40 SYSCFG_SWPR2_PAGE40 /*!< SRAM2 Write protection page 40 */
AnnaBridge 145:64910690c574 153 #define SYSCFG_SRAM2WRP_PAGE41 SYSCFG_SWPR2_PAGE41 /*!< SRAM2 Write protection page 41 */
AnnaBridge 145:64910690c574 154 #define SYSCFG_SRAM2WRP_PAGE42 SYSCFG_SWPR2_PAGE42 /*!< SRAM2 Write protection page 42 */
AnnaBridge 145:64910690c574 155 #define SYSCFG_SRAM2WRP_PAGE43 SYSCFG_SWPR2_PAGE43 /*!< SRAM2 Write protection page 43 */
AnnaBridge 145:64910690c574 156 #define SYSCFG_SRAM2WRP_PAGE44 SYSCFG_SWPR2_PAGE44 /*!< SRAM2 Write protection page 44 */
AnnaBridge 145:64910690c574 157 #define SYSCFG_SRAM2WRP_PAGE45 SYSCFG_SWPR2_PAGE45 /*!< SRAM2 Write protection page 45 */
AnnaBridge 145:64910690c574 158 #define SYSCFG_SRAM2WRP_PAGE46 SYSCFG_SWPR2_PAGE46 /*!< SRAM2 Write protection page 46 */
AnnaBridge 145:64910690c574 159 #define SYSCFG_SRAM2WRP_PAGE47 SYSCFG_SWPR2_PAGE47 /*!< SRAM2 Write protection page 47 */
AnnaBridge 145:64910690c574 160 #define SYSCFG_SRAM2WRP_PAGE48 SYSCFG_SWPR2_PAGE48 /*!< SRAM2 Write protection page 48 */
AnnaBridge 145:64910690c574 161 #define SYSCFG_SRAM2WRP_PAGE49 SYSCFG_SWPR2_PAGE49 /*!< SRAM2 Write protection page 49 */
AnnaBridge 145:64910690c574 162 #define SYSCFG_SRAM2WRP_PAGE50 SYSCFG_SWPR2_PAGE50 /*!< SRAM2 Write protection page 50 */
AnnaBridge 145:64910690c574 163 #define SYSCFG_SRAM2WRP_PAGE51 SYSCFG_SWPR2_PAGE51 /*!< SRAM2 Write protection page 51 */
AnnaBridge 145:64910690c574 164 #define SYSCFG_SRAM2WRP_PAGE52 SYSCFG_SWPR2_PAGE52 /*!< SRAM2 Write protection page 52 */
AnnaBridge 145:64910690c574 165 #define SYSCFG_SRAM2WRP_PAGE53 SYSCFG_SWPR2_PAGE53 /*!< SRAM2 Write protection page 53 */
AnnaBridge 145:64910690c574 166 #define SYSCFG_SRAM2WRP_PAGE54 SYSCFG_SWPR2_PAGE54 /*!< SRAM2 Write protection page 54 */
AnnaBridge 145:64910690c574 167 #define SYSCFG_SRAM2WRP_PAGE55 SYSCFG_SWPR2_PAGE55 /*!< SRAM2 Write protection page 55 */
AnnaBridge 145:64910690c574 168 #define SYSCFG_SRAM2WRP_PAGE56 SYSCFG_SWPR2_PAGE56 /*!< SRAM2 Write protection page 56 */
AnnaBridge 145:64910690c574 169 #define SYSCFG_SRAM2WRP_PAGE57 SYSCFG_SWPR2_PAGE57 /*!< SRAM2 Write protection page 57 */
AnnaBridge 145:64910690c574 170 #define SYSCFG_SRAM2WRP_PAGE58 SYSCFG_SWPR2_PAGE58 /*!< SRAM2 Write protection page 58 */
AnnaBridge 145:64910690c574 171 #define SYSCFG_SRAM2WRP_PAGE59 SYSCFG_SWPR2_PAGE59 /*!< SRAM2 Write protection page 59 */
AnnaBridge 145:64910690c574 172 #define SYSCFG_SRAM2WRP_PAGE60 SYSCFG_SWPR2_PAGE60 /*!< SRAM2 Write protection page 60 */
AnnaBridge 145:64910690c574 173 #define SYSCFG_SRAM2WRP_PAGE61 SYSCFG_SWPR2_PAGE61 /*!< SRAM2 Write protection page 61 */
AnnaBridge 145:64910690c574 174 #define SYSCFG_SRAM2WRP_PAGE62 SYSCFG_SWPR2_PAGE62 /*!< SRAM2 Write protection page 62 */
AnnaBridge 145:64910690c574 175 #define SYSCFG_SRAM2WRP_PAGE63 SYSCFG_SWPR2_PAGE63 /*!< SRAM2 Write protection page 63 */
AnnaBridge 145:64910690c574 176
AnnaBridge 145:64910690c574 177 /**
AnnaBridge 145:64910690c574 178 * @}
AnnaBridge 145:64910690c574 179 */
AnnaBridge 145:64910690c574 180 #endif /* SYSCFG_SWPR2_PAGE63 */
AnnaBridge 145:64910690c574 181
Kojto 122:f9eeca106725 182 #if defined(VREFBUF)
Kojto 122:f9eeca106725 183 /** @defgroup SYSCFG_VREFBUF_VoltageScale VREFBUF Voltage Scale
Kojto 122:f9eeca106725 184 * @{
Kojto 122:f9eeca106725 185 */
Kojto 122:f9eeca106725 186 #define SYSCFG_VREFBUF_VOLTAGE_SCALE0 ((uint32_t)0x00000000) /*!< Voltage reference scale 0 (VREF_OUT1) */
Kojto 122:f9eeca106725 187 #define SYSCFG_VREFBUF_VOLTAGE_SCALE1 VREFBUF_CSR_VRS /*!< Voltage reference scale 1 (VREF_OUT2) */
Kojto 122:f9eeca106725 188
Kojto 122:f9eeca106725 189 /**
Kojto 122:f9eeca106725 190 * @}
Kojto 122:f9eeca106725 191 */
Kojto 122:f9eeca106725 192
Kojto 122:f9eeca106725 193 /** @defgroup SYSCFG_VREFBUF_HighImpedance VREFBUF High Impedance
Kojto 122:f9eeca106725 194 * @{
Kojto 122:f9eeca106725 195 */
Kojto 122:f9eeca106725 196 #define SYSCFG_VREFBUF_HIGH_IMPEDANCE_DISABLE ((uint32_t)0x00000000) /*!< VREF_plus pin is internally connected to Voltage reference buffer output */
Kojto 122:f9eeca106725 197 #define SYSCFG_VREFBUF_HIGH_IMPEDANCE_ENABLE VREFBUF_CSR_HIZ /*!< VREF_plus pin is high impedance */
Kojto 122:f9eeca106725 198
Kojto 122:f9eeca106725 199 /**
Kojto 122:f9eeca106725 200 * @}
Kojto 122:f9eeca106725 201 */
Kojto 122:f9eeca106725 202 #endif /* VREFBUF */
Kojto 122:f9eeca106725 203
Kojto 122:f9eeca106725 204 /** @defgroup SYSCFG_flags_definition Flags
Kojto 122:f9eeca106725 205 * @{
Kojto 122:f9eeca106725 206 */
Kojto 122:f9eeca106725 207
Kojto 122:f9eeca106725 208 #define SYSCFG_FLAG_SRAM2_PE SYSCFG_CFGR2_SPF /*!< SRAM2 parity error */
Kojto 122:f9eeca106725 209 #define SYSCFG_FLAG_SRAM2_BUSY SYSCFG_SCSR_SRAM2BSY /*!< SRAM2 busy by erase operation */
Kojto 122:f9eeca106725 210
Kojto 122:f9eeca106725 211 /**
Kojto 122:f9eeca106725 212 * @}
Kojto 122:f9eeca106725 213 */
Kojto 122:f9eeca106725 214
Kojto 122:f9eeca106725 215 /** @defgroup SYSCFG_FastModePlus_GPIO Fast-mode Plus on GPIO
Kojto 122:f9eeca106725 216 * @{
Kojto 122:f9eeca106725 217 */
Kojto 122:f9eeca106725 218
Kojto 122:f9eeca106725 219 /** @brief Fast-mode Plus driving capability on a specific GPIO
Kojto 122:f9eeca106725 220 */
Kojto 122:f9eeca106725 221 #define SYSCFG_FASTMODEPLUS_PB6 SYSCFG_CFGR1_I2C_PB6_FMP /*!< Enable Fast-mode Plus on PB6 */
Kojto 122:f9eeca106725 222 #define SYSCFG_FASTMODEPLUS_PB7 SYSCFG_CFGR1_I2C_PB7_FMP /*!< Enable Fast-mode Plus on PB7 */
Kojto 122:f9eeca106725 223 #if defined(SYSCFG_CFGR1_I2C_PB8_FMP)
Kojto 122:f9eeca106725 224 #define SYSCFG_FASTMODEPLUS_PB8 SYSCFG_CFGR1_I2C_PB8_FMP /*!< Enable Fast-mode Plus on PB8 */
Kojto 122:f9eeca106725 225 #endif /* SYSCFG_CFGR1_I2C_PB8_FMP */
Kojto 122:f9eeca106725 226 #if defined(SYSCFG_CFGR1_I2C_PB9_FMP)
Kojto 122:f9eeca106725 227 #define SYSCFG_FASTMODEPLUS_PB9 SYSCFG_CFGR1_I2C_PB9_FMP /*!< Enable Fast-mode Plus on PB9 */
Kojto 122:f9eeca106725 228 #endif /* SYSCFG_CFGR1_I2C_PB9_FMP */
Kojto 122:f9eeca106725 229
Kojto 122:f9eeca106725 230 /**
Kojto 122:f9eeca106725 231 * @}
Kojto 122:f9eeca106725 232 */
Kojto 122:f9eeca106725 233
Kojto 122:f9eeca106725 234 /**
Kojto 122:f9eeca106725 235 * @}
Kojto 122:f9eeca106725 236 */
Kojto 122:f9eeca106725 237
Kojto 122:f9eeca106725 238 /* Exported macros -----------------------------------------------------------*/
Kojto 122:f9eeca106725 239
Kojto 122:f9eeca106725 240 /** @defgroup DBGMCU_Exported_Macros DBGMCU Exported Macros
Kojto 122:f9eeca106725 241 * @{
Kojto 122:f9eeca106725 242 */
Kojto 122:f9eeca106725 243
Kojto 122:f9eeca106725 244 /** @brief Freeze/Unfreeze Peripherals in Debug mode
Kojto 122:f9eeca106725 245 */
Kojto 122:f9eeca106725 246 #if defined(DBGMCU_APB1FZR1_DBG_TIM2_STOP)
Kojto 122:f9eeca106725 247 #define __HAL_DBGMCU_FREEZE_TIM2() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM2_STOP)
Kojto 122:f9eeca106725 248 #define __HAL_DBGMCU_UNFREEZE_TIM2() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM2_STOP)
Kojto 122:f9eeca106725 249 #endif
Kojto 122:f9eeca106725 250
Kojto 122:f9eeca106725 251 #if defined(DBGMCU_APB1FZR1_DBG_TIM3_STOP)
Kojto 122:f9eeca106725 252 #define __HAL_DBGMCU_FREEZE_TIM3() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM3_STOP)
Kojto 122:f9eeca106725 253 #define __HAL_DBGMCU_UNFREEZE_TIM3() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM3_STOP)
Kojto 122:f9eeca106725 254 #endif
Kojto 122:f9eeca106725 255
Kojto 122:f9eeca106725 256 #if defined(DBGMCU_APB1FZR1_DBG_TIM4_STOP)
Kojto 122:f9eeca106725 257 #define __HAL_DBGMCU_FREEZE_TIM4() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM4_STOP)
Kojto 122:f9eeca106725 258 #define __HAL_DBGMCU_UNFREEZE_TIM4() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM4_STOP)
Kojto 122:f9eeca106725 259 #endif
Kojto 122:f9eeca106725 260
Kojto 122:f9eeca106725 261 #if defined(DBGMCU_APB1FZR1_DBG_TIM5_STOP)
Kojto 122:f9eeca106725 262 #define __HAL_DBGMCU_FREEZE_TIM5() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM5_STOP)
Kojto 122:f9eeca106725 263 #define __HAL_DBGMCU_UNFREEZE_TIM5() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM5_STOP)
Kojto 122:f9eeca106725 264 #endif
Kojto 122:f9eeca106725 265
Kojto 122:f9eeca106725 266 #if defined(DBGMCU_APB1FZR1_DBG_TIM6_STOP)
Kojto 122:f9eeca106725 267 #define __HAL_DBGMCU_FREEZE_TIM6() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM6_STOP)
Kojto 122:f9eeca106725 268 #define __HAL_DBGMCU_UNFREEZE_TIM6() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM6_STOP)
Kojto 122:f9eeca106725 269 #endif
Kojto 122:f9eeca106725 270
Kojto 122:f9eeca106725 271 #if defined(DBGMCU_APB1FZR1_DBG_TIM7_STOP)
Kojto 122:f9eeca106725 272 #define __HAL_DBGMCU_FREEZE_TIM7() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM7_STOP)
Kojto 122:f9eeca106725 273 #define __HAL_DBGMCU_UNFREEZE_TIM7() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_TIM7_STOP)
Kojto 122:f9eeca106725 274 #endif
Kojto 122:f9eeca106725 275
Kojto 122:f9eeca106725 276 #if defined(DBGMCU_APB1FZR1_DBG_RTC_STOP)
Kojto 122:f9eeca106725 277 #define __HAL_DBGMCU_FREEZE_RTC() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_RTC_STOP)
Kojto 122:f9eeca106725 278 #define __HAL_DBGMCU_UNFREEZE_RTC() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_RTC_STOP)
Kojto 122:f9eeca106725 279 #endif
Kojto 122:f9eeca106725 280
Kojto 122:f9eeca106725 281 #if defined(DBGMCU_APB1FZR1_DBG_WWDG_STOP)
Kojto 122:f9eeca106725 282 #define __HAL_DBGMCU_FREEZE_WWDG() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_WWDG_STOP)
Kojto 122:f9eeca106725 283 #define __HAL_DBGMCU_UNFREEZE_WWDG() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_WWDG_STOP)
Kojto 122:f9eeca106725 284 #endif
Kojto 122:f9eeca106725 285
Kojto 122:f9eeca106725 286 #if defined(DBGMCU_APB1FZR1_DBG_IWDG_STOP)
Kojto 122:f9eeca106725 287 #define __HAL_DBGMCU_FREEZE_IWDG() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_IWDG_STOP)
Kojto 122:f9eeca106725 288 #define __HAL_DBGMCU_UNFREEZE_IWDG() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_IWDG_STOP)
Kojto 122:f9eeca106725 289 #endif
Kojto 122:f9eeca106725 290
Kojto 122:f9eeca106725 291 #if defined(DBGMCU_APB1FZR1_DBG_I2C1_STOP)
Kojto 122:f9eeca106725 292 #define __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_I2C1_STOP)
Kojto 122:f9eeca106725 293 #define __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_I2C1_STOP)
Kojto 122:f9eeca106725 294 #endif
Kojto 122:f9eeca106725 295
Kojto 122:f9eeca106725 296 #if defined(DBGMCU_APB1FZR1_DBG_I2C2_STOP)
Kojto 122:f9eeca106725 297 #define __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_I2C2_STOP)
Kojto 122:f9eeca106725 298 #define __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_I2C2_STOP)
Kojto 122:f9eeca106725 299 #endif
Kojto 122:f9eeca106725 300
Kojto 122:f9eeca106725 301 #if defined(DBGMCU_APB1FZR1_DBG_I2C3_STOP)
Kojto 122:f9eeca106725 302 #define __HAL_DBGMCU_FREEZE_I2C3_TIMEOUT() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_I2C3_STOP)
Kojto 122:f9eeca106725 303 #define __HAL_DBGMCU_UNFREEZE_I2C3_TIMEOUT() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_I2C3_STOP)
Kojto 122:f9eeca106725 304 #endif
Kojto 122:f9eeca106725 305
AnnaBridge 145:64910690c574 306 #if defined(DBGMCU_APB1FZR2_DBG_I2C4_STOP)
AnnaBridge 145:64910690c574 307 #define __HAL_DBGMCU_FREEZE_I2C4_TIMEOUT() SET_BIT(DBGMCU->APB1FZR2, DBGMCU_APB1FZR2_DBG_I2C4_STOP)
AnnaBridge 145:64910690c574 308 #define __HAL_DBGMCU_UNFREEZE_I2C4_TIMEOUT() CLEAR_BIT(DBGMCU->APB1FZR2, DBGMCU_APB1FZR2_DBG_I2C4_STOP)
AnnaBridge 145:64910690c574 309 #endif
AnnaBridge 145:64910690c574 310
Kojto 122:f9eeca106725 311 #if defined(DBGMCU_APB1FZR1_DBG_CAN_STOP)
Kojto 122:f9eeca106725 312 #define __HAL_DBGMCU_FREEZE_CAN1() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_CAN_STOP)
Kojto 122:f9eeca106725 313 #define __HAL_DBGMCU_UNFREEZE_CAN1() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_CAN_STOP)
Kojto 122:f9eeca106725 314 #endif
Kojto 122:f9eeca106725 315
AnnaBridge 145:64910690c574 316 #if defined(DBGMCU_APB1FZR1_DBG_CAN2_STOP)
AnnaBridge 145:64910690c574 317 #define __HAL_DBGMCU_FREEZE_CAN2() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_CAN2_STOP)
AnnaBridge 145:64910690c574 318 #define __HAL_DBGMCU_UNFREEZE_CAN2() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_CAN2_STOP)
AnnaBridge 145:64910690c574 319 #endif
AnnaBridge 145:64910690c574 320
Kojto 122:f9eeca106725 321 #if defined(DBGMCU_APB1FZR1_DBG_LPTIM1_STOP)
Kojto 122:f9eeca106725 322 #define __HAL_DBGMCU_FREEZE_LPTIM1() SET_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_LPTIM1_STOP)
Kojto 122:f9eeca106725 323 #define __HAL_DBGMCU_UNFREEZE_LPTIM1() CLEAR_BIT(DBGMCU->APB1FZR1, DBGMCU_APB1FZR1_DBG_LPTIM1_STOP)
Kojto 122:f9eeca106725 324 #endif
Kojto 122:f9eeca106725 325
Kojto 122:f9eeca106725 326 #if defined(DBGMCU_APB1FZR2_DBG_LPTIM2_STOP)
Kojto 122:f9eeca106725 327 #define __HAL_DBGMCU_FREEZE_LPTIM2() SET_BIT(DBGMCU->APB1FZR2, DBGMCU_APB1FZR2_DBG_LPTIM2_STOP)
Kojto 122:f9eeca106725 328 #define __HAL_DBGMCU_UNFREEZE_LPTIM2() CLEAR_BIT(DBGMCU->APB1FZR2, DBGMCU_APB1FZR2_DBG_LPTIM2_STOP)
Kojto 122:f9eeca106725 329 #endif
Kojto 122:f9eeca106725 330
Kojto 122:f9eeca106725 331 #if defined(DBGMCU_APB2FZ_DBG_TIM1_STOP)
Kojto 122:f9eeca106725 332 #define __HAL_DBGMCU_FREEZE_TIM1() SET_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM1_STOP)
Kojto 122:f9eeca106725 333 #define __HAL_DBGMCU_UNFREEZE_TIM1() CLEAR_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM1_STOP)
Kojto 122:f9eeca106725 334 #endif
Kojto 122:f9eeca106725 335
Kojto 122:f9eeca106725 336 #if defined(DBGMCU_APB2FZ_DBG_TIM8_STOP)
Kojto 122:f9eeca106725 337 #define __HAL_DBGMCU_FREEZE_TIM8() SET_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM8_STOP)
Kojto 122:f9eeca106725 338 #define __HAL_DBGMCU_UNFREEZE_TIM8() CLEAR_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM8_STOP)
Kojto 122:f9eeca106725 339 #endif
Kojto 122:f9eeca106725 340
Kojto 122:f9eeca106725 341 #if defined(DBGMCU_APB2FZ_DBG_TIM15_STOP)
Kojto 122:f9eeca106725 342 #define __HAL_DBGMCU_FREEZE_TIM15() SET_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM15_STOP)
Kojto 122:f9eeca106725 343 #define __HAL_DBGMCU_UNFREEZE_TIM15() CLEAR_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM15_STOP)
Kojto 122:f9eeca106725 344 #endif
Kojto 122:f9eeca106725 345
Kojto 122:f9eeca106725 346 #if defined(DBGMCU_APB2FZ_DBG_TIM16_STOP)
Kojto 122:f9eeca106725 347 #define __HAL_DBGMCU_FREEZE_TIM16() SET_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM16_STOP)
Kojto 122:f9eeca106725 348 #define __HAL_DBGMCU_UNFREEZE_TIM16() CLEAR_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM16_STOP)
Kojto 122:f9eeca106725 349 #endif
Kojto 122:f9eeca106725 350
Kojto 122:f9eeca106725 351 #if defined(DBGMCU_APB2FZ_DBG_TIM17_STOP)
Kojto 122:f9eeca106725 352 #define __HAL_DBGMCU_FREEZE_TIM17() SET_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM17_STOP)
Kojto 122:f9eeca106725 353 #define __HAL_DBGMCU_UNFREEZE_TIM17() CLEAR_BIT(DBGMCU->APB2FZ, DBGMCU_APB2FZ_DBG_TIM17_STOP)
Kojto 122:f9eeca106725 354 #endif
Kojto 122:f9eeca106725 355
Kojto 122:f9eeca106725 356 /**
Kojto 122:f9eeca106725 357 * @}
Kojto 122:f9eeca106725 358 */
Kojto 122:f9eeca106725 359
Kojto 122:f9eeca106725 360 /** @defgroup SYSCFG_Exported_Macros SYSCFG Exported Macros
Kojto 122:f9eeca106725 361 * @{
Kojto 122:f9eeca106725 362 */
Kojto 122:f9eeca106725 363
Kojto 122:f9eeca106725 364 /** @brief Main Flash memory mapped at 0x00000000.
Kojto 122:f9eeca106725 365 */
Kojto 122:f9eeca106725 366 #define __HAL_SYSCFG_REMAPMEMORY_FLASH() CLEAR_BIT(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE)
Kojto 122:f9eeca106725 367
Kojto 122:f9eeca106725 368 /** @brief System Flash memory mapped at 0x00000000.
Kojto 122:f9eeca106725 369 */
Kojto 122:f9eeca106725 370 #define __HAL_SYSCFG_REMAPMEMORY_SYSTEMFLASH() MODIFY_REG(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE, SYSCFG_MEMRMP_MEM_MODE_0)
Kojto 122:f9eeca106725 371
Kojto 122:f9eeca106725 372 /** @brief Embedded SRAM mapped at 0x00000000.
Kojto 122:f9eeca106725 373 */
Kojto 122:f9eeca106725 374 #define __HAL_SYSCFG_REMAPMEMORY_SRAM() MODIFY_REG(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE, (SYSCFG_MEMRMP_MEM_MODE_1|SYSCFG_MEMRMP_MEM_MODE_0))
Kojto 122:f9eeca106725 375
AnnaBridge 145:64910690c574 376 #if defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) || \
AnnaBridge 145:64910690c574 377 defined (STM32L496xx) || defined (STM32L4A6xx)
AnnaBridge 145:64910690c574 378
Kojto 122:f9eeca106725 379 /** @brief FMC Bank1 (NOR/PSRAM 1 and 2) mapped at 0x00000000.
Kojto 122:f9eeca106725 380 */
Kojto 122:f9eeca106725 381 #define __HAL_SYSCFG_REMAPMEMORY_FMC() MODIFY_REG(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE, SYSCFG_MEMRMP_MEM_MODE_1)
AnnaBridge 145:64910690c574 382
AnnaBridge 145:64910690c574 383 #endif /* STM32L471xx || STM32L475xx || STM32L476xx || STM32L485xx || STM32L486xx || */
AnnaBridge 145:64910690c574 384 /* STM32L496xx || STM32L4A6xx */
Kojto 122:f9eeca106725 385
Kojto 122:f9eeca106725 386 /** @brief QUADSPI mapped at 0x00000000.
Kojto 122:f9eeca106725 387 */
Kojto 122:f9eeca106725 388 #define __HAL_SYSCFG_REMAPMEMORY_QUADSPI() MODIFY_REG(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE, (SYSCFG_MEMRMP_MEM_MODE_2|SYSCFG_MEMRMP_MEM_MODE_1))
Kojto 122:f9eeca106725 389
Kojto 122:f9eeca106725 390 /**
Kojto 122:f9eeca106725 391 * @brief Return the boot mode as configured by user.
Kojto 122:f9eeca106725 392 * @retval The boot mode as configured by user. The returned value can be one
Kojto 122:f9eeca106725 393 * of the following values:
Kojto 122:f9eeca106725 394 * @arg @ref SYSCFG_BOOT_MAINFLASH
Kojto 122:f9eeca106725 395 * @arg @ref SYSCFG_BOOT_SYSTEMFLASH
Kojto 122:f9eeca106725 396 @if STM32L486xx
Kojto 122:f9eeca106725 397 * @arg @ref SYSCFG_BOOT_FMC
Kojto 122:f9eeca106725 398 @endif
Kojto 122:f9eeca106725 399 * @arg @ref SYSCFG_BOOT_SRAM
Kojto 122:f9eeca106725 400 * @arg @ref SYSCFG_BOOT_QUADSPI
Kojto 122:f9eeca106725 401 */
Kojto 122:f9eeca106725 402 #define __HAL_SYSCFG_GET_BOOT_MODE() READ_BIT(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE)
Kojto 122:f9eeca106725 403
AnnaBridge 145:64910690c574 404 /** @brief SRAM2 page 0 to 31 write protection enable macro
AnnaBridge 145:64910690c574 405 * @param __SRAM2WRP__ This parameter can be a combination of values of @ref SYSCFG_SRAM2WRP
AnnaBridge 145:64910690c574 406 * @note Write protection can only be disabled by a system reset
Kojto 122:f9eeca106725 407 */
AnnaBridge 145:64910690c574 408 #define __HAL_SYSCFG_SRAM2_WRP_1_31_ENABLE(__SRAM2WRP__) do {assert_param(IS_SYSCFG_SRAM2WRP_PAGE((__SRAM2WRP__)));\
Kojto 122:f9eeca106725 409 SET_BIT(SYSCFG->SWPR, (__SRAM2WRP__));\
Kojto 122:f9eeca106725 410 }while(0)
Kojto 122:f9eeca106725 411
AnnaBridge 145:64910690c574 412 #if defined(SYSCFG_SWPR2_PAGE63)
AnnaBridge 145:64910690c574 413 /** @brief SRAM2 page 32 to 63 write protection enable macro
AnnaBridge 145:64910690c574 414 * @param __SRAM2WRP__ This parameter can be a combination of values of @ref SYSCFG_SRAM2WRP_32_63
AnnaBridge 145:64910690c574 415 * @note Write protection can only be disabled by a system reset
AnnaBridge 145:64910690c574 416 */
AnnaBridge 145:64910690c574 417 #define __HAL_SYSCFG_SRAM2_WRP_32_63_ENABLE(__SRAM2WRP__) do {assert_param(IS_SYSCFG_SRAM2WRP_PAGE((__SRAM2WRP__)));\
AnnaBridge 145:64910690c574 418 SET_BIT(SYSCFG->SWPR2, (__SRAM2WRP__));\
AnnaBridge 145:64910690c574 419 }while(0)
AnnaBridge 145:64910690c574 420 #endif /* SYSCFG_SWPR2_PAGE63 */
AnnaBridge 145:64910690c574 421
Kojto 122:f9eeca106725 422 /** @brief SRAM2 page write protection unlock prior to erase
Kojto 122:f9eeca106725 423 * @note Writing a wrong key reactivates the write protection
Kojto 122:f9eeca106725 424 */
Kojto 122:f9eeca106725 425 #define __HAL_SYSCFG_SRAM2_WRP_UNLOCK() do {SYSCFG->SKR = 0xCA;\
Kojto 122:f9eeca106725 426 SYSCFG->SKR = 0x53;\
Kojto 122:f9eeca106725 427 }while(0)
Kojto 122:f9eeca106725 428
Kojto 122:f9eeca106725 429 /** @brief SRAM2 erase
Kojto 122:f9eeca106725 430 * @note __SYSCFG_GET_FLAG(SYSCFG_FLAG_SRAM2_BUSY) may be used to check end of erase
Kojto 122:f9eeca106725 431 */
Kojto 122:f9eeca106725 432 #define __HAL_SYSCFG_SRAM2_ERASE() SET_BIT(SYSCFG->SCSR, SYSCFG_SCSR_SRAM2ER)
Kojto 122:f9eeca106725 433
Kojto 122:f9eeca106725 434 /** @brief Floating Point Unit interrupt enable/disable macros
Kojto 122:f9eeca106725 435 * @param __INTERRUPT__: This parameter can be a value of @ref SYSCFG_FPU_Interrupts
Kojto 122:f9eeca106725 436 */
Kojto 122:f9eeca106725 437 #define __HAL_SYSCFG_FPU_INTERRUPT_ENABLE(__INTERRUPT__) do {assert_param(IS_SYSCFG_FPU_INTERRUPT((__INTERRUPT__)));\
Kojto 122:f9eeca106725 438 SET_BIT(SYSCFG->CFGR1, (__INTERRUPT__));\
Kojto 122:f9eeca106725 439 }while(0)
Kojto 122:f9eeca106725 440
Kojto 122:f9eeca106725 441 #define __HAL_SYSCFG_FPU_INTERRUPT_DISABLE(__INTERRUPT__) do {assert_param(IS_SYSCFG_FPU_INTERRUPT((__INTERRUPT__)));\
Kojto 122:f9eeca106725 442 CLEAR_BIT(SYSCFG->CFGR1, (__INTERRUPT__));\
Kojto 122:f9eeca106725 443 }while(0)
Kojto 122:f9eeca106725 444
Kojto 122:f9eeca106725 445 /** @brief SYSCFG Break ECC lock.
Kojto 122:f9eeca106725 446 * Enable and lock the connection of Flash ECC error connection to TIM1/8/15/16/17 Break input.
Kojto 122:f9eeca106725 447 * @note The selected configuration is locked and can be unlocked only by system reset.
Kojto 122:f9eeca106725 448 */
Kojto 122:f9eeca106725 449 #define __HAL_SYSCFG_BREAK_ECC_LOCK() SET_BIT(SYSCFG->CFGR2, SYSCFG_CFGR2_ECCL)
Kojto 122:f9eeca106725 450
Kojto 122:f9eeca106725 451 /** @brief SYSCFG Break Cortex-M4 Lockup lock.
Kojto 122:f9eeca106725 452 * Enable and lock the connection of Cortex-M4 LOCKUP (Hardfault) output to TIM1/8/15/16/17 Break input.
Kojto 122:f9eeca106725 453 * @note The selected configuration is locked and can be unlocked only by system reset.
Kojto 122:f9eeca106725 454 */
Kojto 122:f9eeca106725 455 #define __HAL_SYSCFG_BREAK_LOCKUP_LOCK() SET_BIT(SYSCFG->CFGR2, SYSCFG_CFGR2_CLL)
Kojto 122:f9eeca106725 456
Kojto 122:f9eeca106725 457 /** @brief SYSCFG Break PVD lock.
Kojto 122:f9eeca106725 458 * Enable and lock the PVD connection to Timer1/8/15/16/17 Break input, as well as the PVDE and PLS[2:0] in the PWR_CR2 register.
Kojto 122:f9eeca106725 459 * @note The selected configuration is locked and can be unlocked only by system reset.
Kojto 122:f9eeca106725 460 */
Kojto 122:f9eeca106725 461 #define __HAL_SYSCFG_BREAK_PVD_LOCK() SET_BIT(SYSCFG->CFGR2, SYSCFG_CFGR2_PVDL)
Kojto 122:f9eeca106725 462
Kojto 122:f9eeca106725 463 /** @brief SYSCFG Break SRAM2 parity lock.
Kojto 122:f9eeca106725 464 * Enable and lock the SRAM2 parity error signal connection to TIM1/8/15/16/17 Break input.
Kojto 122:f9eeca106725 465 * @note The selected configuration is locked and can be unlocked by system reset.
Kojto 122:f9eeca106725 466 */
Kojto 122:f9eeca106725 467 #define __HAL_SYSCFG_BREAK_SRAM2PARITY_LOCK() SET_BIT(SYSCFG->CFGR2, SYSCFG_CFGR2_SPL)
Kojto 122:f9eeca106725 468
Kojto 122:f9eeca106725 469 /** @brief Check SYSCFG flag is set or not.
Kojto 122:f9eeca106725 470 * @param __FLAG__: specifies the flag to check.
Kojto 122:f9eeca106725 471 * This parameter can be one of the following values:
Kojto 122:f9eeca106725 472 * @arg @ref SYSCFG_FLAG_SRAM2_PE SRAM2 Parity Error Flag
Kojto 122:f9eeca106725 473 * @arg @ref SYSCFG_FLAG_SRAM2_BUSY SRAM2 Erase Ongoing
Kojto 122:f9eeca106725 474 * @retval The new state of __FLAG__ (TRUE or FALSE).
Kojto 122:f9eeca106725 475 */
Kojto 122:f9eeca106725 476 #define __HAL_SYSCFG_GET_FLAG(__FLAG__) ((((((__FLAG__) == SYSCFG_SCSR_SRAM2BSY)? SYSCFG->SCSR : SYSCFG->CFGR2) & (__FLAG__))!= 0) ? 1 : 0)
Kojto 122:f9eeca106725 477
Kojto 122:f9eeca106725 478 /** @brief Set the SPF bit to clear the SRAM Parity Error Flag.
Kojto 122:f9eeca106725 479 */
Kojto 122:f9eeca106725 480 #define __HAL_SYSCFG_CLEAR_FLAG() SET_BIT(SYSCFG->CFGR2, SYSCFG_CFGR2_SPF)
Kojto 122:f9eeca106725 481
Kojto 122:f9eeca106725 482 /** @brief Fast-mode Plus driving capability enable/disable macros
Kojto 122:f9eeca106725 483 * @param __FASTMODEPLUS__: This parameter can be a value of :
Kojto 122:f9eeca106725 484 * @arg @ref SYSCFG_FASTMODEPLUS_PB6 Fast-mode Plus driving capability activation on PB6
Kojto 122:f9eeca106725 485 * @arg @ref SYSCFG_FASTMODEPLUS_PB7 Fast-mode Plus driving capability activation on PB7
Kojto 122:f9eeca106725 486 * @arg @ref SYSCFG_FASTMODEPLUS_PB8 Fast-mode Plus driving capability activation on PB8
Kojto 122:f9eeca106725 487 * @arg @ref SYSCFG_FASTMODEPLUS_PB9 Fast-mode Plus driving capability activation on PB9
Kojto 122:f9eeca106725 488 */
Kojto 122:f9eeca106725 489 #define __HAL_SYSCFG_FASTMODEPLUS_ENABLE(__FASTMODEPLUS__) do {assert_param(IS_SYSCFG_FASTMODEPLUS((__FASTMODEPLUS__)));\
Kojto 122:f9eeca106725 490 SET_BIT(SYSCFG->CFGR1, (__FASTMODEPLUS__));\
Kojto 122:f9eeca106725 491 }while(0)
Kojto 122:f9eeca106725 492
Kojto 122:f9eeca106725 493 #define __HAL_SYSCFG_FASTMODEPLUS_DISABLE(__FASTMODEPLUS__) do {assert_param(IS_SYSCFG_FASTMODEPLUS((__FASTMODEPLUS__)));\
Kojto 122:f9eeca106725 494 CLEAR_BIT(SYSCFG->CFGR1, (__FASTMODEPLUS__));\
Kojto 122:f9eeca106725 495 }while(0)
Kojto 122:f9eeca106725 496
Kojto 122:f9eeca106725 497 /**
Kojto 122:f9eeca106725 498 * @}
Kojto 122:f9eeca106725 499 */
Kojto 122:f9eeca106725 500
Kojto 122:f9eeca106725 501 /* Private macros ------------------------------------------------------------*/
Kojto 122:f9eeca106725 502 /** @defgroup SYSCFG_Private_Macros SYSCFG Private Macros
Kojto 122:f9eeca106725 503 * @{
Kojto 122:f9eeca106725 504 */
Kojto 122:f9eeca106725 505
Kojto 122:f9eeca106725 506 #define IS_SYSCFG_FPU_INTERRUPT(__INTERRUPT__) ((((__INTERRUPT__) & SYSCFG_IT_FPU_IOC) == SYSCFG_IT_FPU_IOC) || \
Kojto 122:f9eeca106725 507 (((__INTERRUPT__) & SYSCFG_IT_FPU_DZC) == SYSCFG_IT_FPU_DZC) || \
Kojto 122:f9eeca106725 508 (((__INTERRUPT__) & SYSCFG_IT_FPU_UFC) == SYSCFG_IT_FPU_UFC) || \
Kojto 122:f9eeca106725 509 (((__INTERRUPT__) & SYSCFG_IT_FPU_OFC) == SYSCFG_IT_FPU_OFC) || \
Kojto 122:f9eeca106725 510 (((__INTERRUPT__) & SYSCFG_IT_FPU_IDC) == SYSCFG_IT_FPU_IDC) || \
Kojto 122:f9eeca106725 511 (((__INTERRUPT__) & SYSCFG_IT_FPU_IXC) == SYSCFG_IT_FPU_IXC))
Kojto 122:f9eeca106725 512
Kojto 122:f9eeca106725 513 #define IS_SYSCFG_BREAK_CONFIG(__CONFIG__) (((__CONFIG__) == SYSCFG_BREAK_ECC) || \
Kojto 122:f9eeca106725 514 ((__CONFIG__) == SYSCFG_BREAK_PVD) || \
Kojto 122:f9eeca106725 515 ((__CONFIG__) == SYSCFG_BREAK_SRAM2_PARITY) || \
Kojto 122:f9eeca106725 516 ((__CONFIG__) == SYSCFG_BREAK_LOCKUP))
Kojto 122:f9eeca106725 517
Kojto 122:f9eeca106725 518 #define IS_SYSCFG_SRAM2WRP_PAGE(__PAGE__) (((__PAGE__) > 0) && ((__PAGE__) <= 0xFFFFFFFF))
Kojto 122:f9eeca106725 519
Kojto 122:f9eeca106725 520 #if defined(VREFBUF)
Kojto 122:f9eeca106725 521 #define IS_SYSCFG_VREFBUF_VOLTAGE_SCALE(__SCALE__) (((__SCALE__) == SYSCFG_VREFBUF_VOLTAGE_SCALE0) || \
Kojto 122:f9eeca106725 522 ((__SCALE__) == SYSCFG_VREFBUF_VOLTAGE_SCALE1))
Kojto 122:f9eeca106725 523
Kojto 122:f9eeca106725 524 #define IS_SYSCFG_VREFBUF_HIGH_IMPEDANCE(__VALUE__) (((__VALUE__) == SYSCFG_VREFBUF_HIGH_IMPEDANCE_DISABLE) || \
Kojto 122:f9eeca106725 525 ((__VALUE__) == SYSCFG_VREFBUF_HIGH_IMPEDANCE_ENABLE))
Kojto 122:f9eeca106725 526
Kojto 122:f9eeca106725 527 #define IS_SYSCFG_VREFBUF_TRIMMING(__VALUE__) (((__VALUE__) > 0) && ((__VALUE__) <= VREFBUF_CCR_TRIM))
Kojto 122:f9eeca106725 528 #endif /* VREFBUF */
Kojto 122:f9eeca106725 529
Kojto 122:f9eeca106725 530 #if defined(SYSCFG_FASTMODEPLUS_PB8) && defined(SYSCFG_FASTMODEPLUS_PB9)
Kojto 122:f9eeca106725 531 #define IS_SYSCFG_FASTMODEPLUS(__PIN__) ((((__PIN__) & SYSCFG_FASTMODEPLUS_PB6) == SYSCFG_FASTMODEPLUS_PB6) || \
Kojto 122:f9eeca106725 532 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB7) == SYSCFG_FASTMODEPLUS_PB7) || \
Kojto 122:f9eeca106725 533 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB8) == SYSCFG_FASTMODEPLUS_PB8) || \
Kojto 122:f9eeca106725 534 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB9) == SYSCFG_FASTMODEPLUS_PB9))
Kojto 122:f9eeca106725 535 #elif defined(SYSCFG_FASTMODEPLUS_PB8)
Kojto 122:f9eeca106725 536 #define IS_SYSCFG_FASTMODEPLUS(__PIN__) ((((__PIN__) & SYSCFG_FASTMODEPLUS_PB6) == SYSCFG_FASTMODEPLUS_PB6) || \
Kojto 122:f9eeca106725 537 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB7) == SYSCFG_FASTMODEPLUS_PB7) || \
Kojto 122:f9eeca106725 538 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB8) == SYSCFG_FASTMODEPLUS_PB8))
Kojto 122:f9eeca106725 539 #elif defined(SYSCFG_FASTMODEPLUS_PB9)
Kojto 122:f9eeca106725 540 #define IS_SYSCFG_FASTMODEPLUS(__PIN__) ((((__PIN__) & SYSCFG_FASTMODEPLUS_PB6) == SYSCFG_FASTMODEPLUS_PB6) || \
Kojto 122:f9eeca106725 541 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB7) == SYSCFG_FASTMODEPLUS_PB7) || \
Kojto 122:f9eeca106725 542 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB9) == SYSCFG_FASTMODEPLUS_PB9))
Kojto 122:f9eeca106725 543 #else
Kojto 122:f9eeca106725 544 #define IS_SYSCFG_FASTMODEPLUS(__PIN__) ((((__PIN__) & SYSCFG_FASTMODEPLUS_PB6) == SYSCFG_FASTMODEPLUS_PB6) || \
Kojto 122:f9eeca106725 545 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB7) == SYSCFG_FASTMODEPLUS_PB7))
Kojto 122:f9eeca106725 546 #endif
Kojto 122:f9eeca106725 547 /**
Kojto 122:f9eeca106725 548 * @}
Kojto 122:f9eeca106725 549 */
Kojto 122:f9eeca106725 550
Kojto 122:f9eeca106725 551 /* Exported functions --------------------------------------------------------*/
Kojto 122:f9eeca106725 552
Kojto 122:f9eeca106725 553 /** @addtogroup HAL_Exported_Functions
Kojto 122:f9eeca106725 554 * @{
Kojto 122:f9eeca106725 555 */
Kojto 122:f9eeca106725 556
Kojto 122:f9eeca106725 557 /** @addtogroup HAL_Exported_Functions_Group1
Kojto 122:f9eeca106725 558 * @{
Kojto 122:f9eeca106725 559 */
Kojto 122:f9eeca106725 560
Kojto 122:f9eeca106725 561 /* Initialization and de-initialization functions ******************************/
Kojto 122:f9eeca106725 562 HAL_StatusTypeDef HAL_Init(void);
Kojto 122:f9eeca106725 563 HAL_StatusTypeDef HAL_DeInit(void);
Kojto 122:f9eeca106725 564 void HAL_MspInit(void);
Kojto 122:f9eeca106725 565 void HAL_MspDeInit(void);
Kojto 122:f9eeca106725 566 HAL_StatusTypeDef HAL_InitTick (uint32_t TickPriority);
Kojto 122:f9eeca106725 567
Kojto 122:f9eeca106725 568 /**
Kojto 122:f9eeca106725 569 * @}
Kojto 122:f9eeca106725 570 */
Kojto 122:f9eeca106725 571
Kojto 122:f9eeca106725 572 /** @addtogroup HAL_Exported_Functions_Group2
Kojto 122:f9eeca106725 573 * @{
Kojto 122:f9eeca106725 574 */
Kojto 122:f9eeca106725 575
Kojto 122:f9eeca106725 576 /* Peripheral Control functions ************************************************/
Kojto 122:f9eeca106725 577 void HAL_IncTick(void);
Kojto 122:f9eeca106725 578 void HAL_Delay(uint32_t Delay);
Kojto 122:f9eeca106725 579 uint32_t HAL_GetTick(void);
Kojto 122:f9eeca106725 580 void HAL_SuspendTick(void);
Kojto 122:f9eeca106725 581 void HAL_ResumeTick(void);
Kojto 122:f9eeca106725 582 uint32_t HAL_GetHalVersion(void);
Kojto 122:f9eeca106725 583 uint32_t HAL_GetREVID(void);
Kojto 122:f9eeca106725 584 uint32_t HAL_GetDEVID(void);
AnnaBridge 145:64910690c574 585 uint32_t HAL_GetUIDw0(void);
AnnaBridge 145:64910690c574 586 uint32_t HAL_GetUIDw1(void);
AnnaBridge 145:64910690c574 587 uint32_t HAL_GetUIDw2(void);
Kojto 122:f9eeca106725 588
Kojto 122:f9eeca106725 589 /**
Kojto 122:f9eeca106725 590 * @}
Kojto 122:f9eeca106725 591 */
Kojto 122:f9eeca106725 592
Kojto 122:f9eeca106725 593 /** @addtogroup HAL_Exported_Functions_Group3
Kojto 122:f9eeca106725 594 * @{
Kojto 122:f9eeca106725 595 */
Kojto 122:f9eeca106725 596
Kojto 122:f9eeca106725 597 /* DBGMCU Peripheral Control functions *****************************************/
Kojto 122:f9eeca106725 598 void HAL_DBGMCU_EnableDBGSleepMode(void);
Kojto 122:f9eeca106725 599 void HAL_DBGMCU_DisableDBGSleepMode(void);
Kojto 122:f9eeca106725 600 void HAL_DBGMCU_EnableDBGStopMode(void);
Kojto 122:f9eeca106725 601 void HAL_DBGMCU_DisableDBGStopMode(void);
Kojto 122:f9eeca106725 602 void HAL_DBGMCU_EnableDBGStandbyMode(void);
Kojto 122:f9eeca106725 603 void HAL_DBGMCU_DisableDBGStandbyMode(void);
Kojto 122:f9eeca106725 604
Kojto 122:f9eeca106725 605 /**
Kojto 122:f9eeca106725 606 * @}
Kojto 122:f9eeca106725 607 */
Kojto 122:f9eeca106725 608
Kojto 122:f9eeca106725 609 /** @addtogroup HAL_Exported_Functions_Group4
Kojto 122:f9eeca106725 610 * @{
Kojto 122:f9eeca106725 611 */
Kojto 122:f9eeca106725 612
Kojto 122:f9eeca106725 613 /* SYSCFG Control functions ****************************************************/
Kojto 122:f9eeca106725 614 void HAL_SYSCFG_SRAM2Erase(void);
Kojto 122:f9eeca106725 615 void HAL_SYSCFG_EnableMemorySwappingBank(void);
Kojto 122:f9eeca106725 616 void HAL_SYSCFG_DisableMemorySwappingBank(void);
Kojto 122:f9eeca106725 617
Kojto 122:f9eeca106725 618 #if defined(VREFBUF)
Kojto 122:f9eeca106725 619 void HAL_SYSCFG_VREFBUF_VoltageScalingConfig(uint32_t VoltageScaling);
Kojto 122:f9eeca106725 620 void HAL_SYSCFG_VREFBUF_HighImpedanceConfig(uint32_t Mode);
Kojto 122:f9eeca106725 621 void HAL_SYSCFG_VREFBUF_TrimmingConfig(uint32_t TrimmingValue);
Kojto 122:f9eeca106725 622 HAL_StatusTypeDef HAL_SYSCFG_EnableVREFBUF(void);
Kojto 122:f9eeca106725 623 void HAL_SYSCFG_DisableVREFBUF(void);
Kojto 122:f9eeca106725 624 #endif /* VREFBUF */
Kojto 122:f9eeca106725 625
Kojto 122:f9eeca106725 626 void HAL_SYSCFG_EnableIOAnalogSwitchBooster(void);
Kojto 122:f9eeca106725 627 void HAL_SYSCFG_DisableIOAnalogSwitchBooster(void);
Kojto 122:f9eeca106725 628
Kojto 122:f9eeca106725 629 /**
Kojto 122:f9eeca106725 630 * @}
Kojto 122:f9eeca106725 631 */
Kojto 122:f9eeca106725 632
Kojto 122:f9eeca106725 633 /**
Kojto 122:f9eeca106725 634 * @}
Kojto 122:f9eeca106725 635 */
Kojto 122:f9eeca106725 636
Kojto 122:f9eeca106725 637 /**
Kojto 122:f9eeca106725 638 * @}
Kojto 122:f9eeca106725 639 */
Kojto 122:f9eeca106725 640
Kojto 122:f9eeca106725 641 /**
Kojto 122:f9eeca106725 642 * @}
Kojto 122:f9eeca106725 643 */
Kojto 122:f9eeca106725 644
Kojto 122:f9eeca106725 645 #ifdef __cplusplus
Kojto 122:f9eeca106725 646 }
Kojto 122:f9eeca106725 647 #endif
Kojto 122:f9eeca106725 648
Kojto 122:f9eeca106725 649 #endif /* __STM32L4xx_HAL_H */
Kojto 122:f9eeca106725 650
Kojto 122:f9eeca106725 651 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/