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:
167:e84263d55307
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 167:e84263d55307 1 /**
AnnaBridge 167:e84263d55307 2 ******************************************************************************
AnnaBridge 167:e84263d55307 3 * @file stm32f2xx_ll_system.h
AnnaBridge 167:e84263d55307 4 * @author MCD Application Team
AnnaBridge 167:e84263d55307 5 * @version V1.2.1
AnnaBridge 167:e84263d55307 6 * @date 14-April-2017
AnnaBridge 167:e84263d55307 7 * @brief Header file of SYSTEM LL module.
AnnaBridge 167:e84263d55307 8 @verbatim
AnnaBridge 167:e84263d55307 9 ==============================================================================
AnnaBridge 167:e84263d55307 10 ##### How to use this driver #####
AnnaBridge 167:e84263d55307 11 ==============================================================================
AnnaBridge 167:e84263d55307 12 [..]
AnnaBridge 167:e84263d55307 13 The LL SYSTEM driver contains a set of generic APIs that can be
AnnaBridge 167:e84263d55307 14 used by user:
AnnaBridge 167:e84263d55307 15 (+) Some of the FLASH features need to be handled in the SYSTEM file.
AnnaBridge 167:e84263d55307 16 (+) Access to DBGCMU registers
AnnaBridge 167:e84263d55307 17 (+) Access to SYSCFG registers
AnnaBridge 167:e84263d55307 18
AnnaBridge 167:e84263d55307 19 @endverbatim
AnnaBridge 167:e84263d55307 20 ******************************************************************************
AnnaBridge 167:e84263d55307 21 * @attention
AnnaBridge 167:e84263d55307 22 *
AnnaBridge 167:e84263d55307 23 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
AnnaBridge 167:e84263d55307 24 *
AnnaBridge 167:e84263d55307 25 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 167:e84263d55307 26 * are permitted provided that the following conditions are met:
AnnaBridge 167:e84263d55307 27 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 167:e84263d55307 28 * this list of conditions and the following disclaimer.
AnnaBridge 167:e84263d55307 29 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 167:e84263d55307 30 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 167:e84263d55307 31 * and/or other materials provided with the distribution.
AnnaBridge 167:e84263d55307 32 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 167:e84263d55307 33 * may be used to endorse or promote products derived from this software
AnnaBridge 167:e84263d55307 34 * without specific prior written permission.
AnnaBridge 167:e84263d55307 35 *
AnnaBridge 167:e84263d55307 36 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 167:e84263d55307 37 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 167:e84263d55307 38 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 167:e84263d55307 39 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 167:e84263d55307 40 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 167:e84263d55307 41 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 167:e84263d55307 42 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 167:e84263d55307 43 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 167:e84263d55307 44 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 167:e84263d55307 45 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 167:e84263d55307 46 *
AnnaBridge 167:e84263d55307 47 ******************************************************************************
AnnaBridge 167:e84263d55307 48 */
AnnaBridge 167:e84263d55307 49
AnnaBridge 167:e84263d55307 50 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 167:e84263d55307 51 #ifndef __STM32F2xx_LL_SYSTEM_H
AnnaBridge 167:e84263d55307 52 #define __STM32F2xx_LL_SYSTEM_H
AnnaBridge 167:e84263d55307 53
AnnaBridge 167:e84263d55307 54 #ifdef __cplusplus
AnnaBridge 167:e84263d55307 55 extern "C" {
AnnaBridge 167:e84263d55307 56 #endif
AnnaBridge 167:e84263d55307 57
AnnaBridge 167:e84263d55307 58 /* Includes ------------------------------------------------------------------*/
AnnaBridge 167:e84263d55307 59 #include "stm32f2xx.h"
AnnaBridge 167:e84263d55307 60
AnnaBridge 167:e84263d55307 61 /** @addtogroup STM32F2xx_LL_Driver
AnnaBridge 167:e84263d55307 62 * @{
AnnaBridge 167:e84263d55307 63 */
AnnaBridge 167:e84263d55307 64
AnnaBridge 167:e84263d55307 65 #if defined (FLASH) || defined (SYSCFG) || defined (DBGMCU)
AnnaBridge 167:e84263d55307 66
AnnaBridge 167:e84263d55307 67 /** @defgroup SYSTEM_LL SYSTEM
AnnaBridge 167:e84263d55307 68 * @{
AnnaBridge 167:e84263d55307 69 */
AnnaBridge 167:e84263d55307 70
AnnaBridge 167:e84263d55307 71 /* Private types -------------------------------------------------------------*/
AnnaBridge 167:e84263d55307 72 /* Private variables ---------------------------------------------------------*/
AnnaBridge 167:e84263d55307 73
AnnaBridge 167:e84263d55307 74 /* Private constants ---------------------------------------------------------*/
AnnaBridge 167:e84263d55307 75 /** @defgroup SYSTEM_LL_Private_Constants SYSTEM Private Constants
AnnaBridge 167:e84263d55307 76 * @{
AnnaBridge 167:e84263d55307 77 */
AnnaBridge 167:e84263d55307 78
AnnaBridge 167:e84263d55307 79 /**
AnnaBridge 167:e84263d55307 80 * @}
AnnaBridge 167:e84263d55307 81 */
AnnaBridge 167:e84263d55307 82
AnnaBridge 167:e84263d55307 83 /* Private macros ------------------------------------------------------------*/
AnnaBridge 167:e84263d55307 84 /* Exported types ------------------------------------------------------------*/
AnnaBridge 167:e84263d55307 85 /* Exported constants --------------------------------------------------------*/
AnnaBridge 167:e84263d55307 86 /** @defgroup SYSTEM_LL_Exported_Constants SYSTEM Exported Constants
AnnaBridge 167:e84263d55307 87 * @{
AnnaBridge 167:e84263d55307 88 */
AnnaBridge 167:e84263d55307 89
AnnaBridge 167:e84263d55307 90 /** @defgroup SYSTEM_LL_EC_REMAP SYSCFG REMAP
AnnaBridge 167:e84263d55307 91 * @{
AnnaBridge 167:e84263d55307 92 */
AnnaBridge 167:e84263d55307 93 #define LL_SYSCFG_REMAP_FLASH (uint32_t)0x00000000 /*!< Main Flash memory mapped at 0x00000000 */
AnnaBridge 167:e84263d55307 94 #define LL_SYSCFG_REMAP_SYSTEMFLASH SYSCFG_MEMRMP_MEM_MODE_0 /*!< System Flash memory mapped at 0x00000000 */
AnnaBridge 167:e84263d55307 95 #define LL_SYSCFG_REMAP_FSMC SYSCFG_MEMRMP_MEM_MODE_1 /*!< FSMC(NOR/PSRAM 1 and 2) mapped at 0x00000000 */
AnnaBridge 167:e84263d55307 96 #define LL_SYSCFG_REMAP_SRAM (SYSCFG_MEMRMP_MEM_MODE_1 | SYSCFG_MEMRMP_MEM_MODE_0) /*!< SRAM1 mapped at 0x00000000 */
AnnaBridge 167:e84263d55307 97 /**
AnnaBridge 167:e84263d55307 98 * @}
AnnaBridge 167:e84263d55307 99 */
AnnaBridge 167:e84263d55307 100
AnnaBridge 167:e84263d55307 101 #if defined(SYSCFG_PMC_MII_RMII_SEL)
AnnaBridge 167:e84263d55307 102 /** @defgroup SYSTEM_LL_EC_PMC SYSCFG PMC
AnnaBridge 167:e84263d55307 103 * @{
AnnaBridge 167:e84263d55307 104 */
AnnaBridge 167:e84263d55307 105 #define LL_SYSCFG_PMC_ETHMII (uint32_t)0x00000000 /*!< ETH Media MII interface */
AnnaBridge 167:e84263d55307 106 #define LL_SYSCFG_PMC_ETHRMII (uint32_t)SYSCFG_PMC_MII_RMII_SEL /*!< ETH Media RMII interface */
AnnaBridge 167:e84263d55307 107
AnnaBridge 167:e84263d55307 108 /**
AnnaBridge 167:e84263d55307 109 * @}
AnnaBridge 167:e84263d55307 110 */
AnnaBridge 167:e84263d55307 111 #endif /* SYSCFG_PMC_MII_RMII_SEL */
AnnaBridge 167:e84263d55307 112
AnnaBridge 167:e84263d55307 113
AnnaBridge 167:e84263d55307 114
AnnaBridge 167:e84263d55307 115 /** @defgroup SYSTEM_LL_EC_I2C_FASTMODEPLUS SYSCFG I2C FASTMODEPLUS
AnnaBridge 167:e84263d55307 116 * @{
AnnaBridge 167:e84263d55307 117 */
AnnaBridge 167:e84263d55307 118 /**
AnnaBridge 167:e84263d55307 119 * @}
AnnaBridge 167:e84263d55307 120 */
AnnaBridge 167:e84263d55307 121
AnnaBridge 167:e84263d55307 122 /** @defgroup SYSTEM_LL_EC_EXTI_PORT SYSCFG EXTI PORT
AnnaBridge 167:e84263d55307 123 * @{
AnnaBridge 167:e84263d55307 124 */
AnnaBridge 167:e84263d55307 125 #define LL_SYSCFG_EXTI_PORTA (uint32_t)0 /*!< EXTI PORT A */
AnnaBridge 167:e84263d55307 126 #define LL_SYSCFG_EXTI_PORTB (uint32_t)1 /*!< EXTI PORT B */
AnnaBridge 167:e84263d55307 127 #define LL_SYSCFG_EXTI_PORTC (uint32_t)2 /*!< EXTI PORT C */
AnnaBridge 167:e84263d55307 128 #define LL_SYSCFG_EXTI_PORTD (uint32_t)3 /*!< EXTI PORT D */
AnnaBridge 167:e84263d55307 129 #define LL_SYSCFG_EXTI_PORTE (uint32_t)4 /*!< EXTI PORT E */
AnnaBridge 167:e84263d55307 130 #if defined(GPIOF)
AnnaBridge 167:e84263d55307 131 #define LL_SYSCFG_EXTI_PORTF (uint32_t)5 /*!< EXTI PORT F */
AnnaBridge 167:e84263d55307 132 #endif /* GPIOF */
AnnaBridge 167:e84263d55307 133 #if defined(GPIOG)
AnnaBridge 167:e84263d55307 134 #define LL_SYSCFG_EXTI_PORTG (uint32_t)6 /*!< EXTI PORT G */
AnnaBridge 167:e84263d55307 135 #endif /* GPIOG */
AnnaBridge 167:e84263d55307 136 #define LL_SYSCFG_EXTI_PORTH (uint32_t)7 /*!< EXTI PORT H */
AnnaBridge 167:e84263d55307 137 #if defined(GPIOI)
AnnaBridge 167:e84263d55307 138 #define LL_SYSCFG_EXTI_PORTI (uint32_t)8 /*!< EXTI PORT I */
AnnaBridge 167:e84263d55307 139 #endif /* GPIOI */
AnnaBridge 167:e84263d55307 140 #if defined(GPIOJ)
AnnaBridge 167:e84263d55307 141 #define LL_SYSCFG_EXTI_PORTJ (uint32_t)9 /*!< EXTI PORT J */
AnnaBridge 167:e84263d55307 142 #endif /* GPIOJ */
AnnaBridge 167:e84263d55307 143 #if defined(GPIOK)
AnnaBridge 167:e84263d55307 144 #define LL_SYSCFG_EXTI_PORTK (uint32_t)10 /*!< EXTI PORT k */
AnnaBridge 167:e84263d55307 145 #endif /* GPIOK */
AnnaBridge 167:e84263d55307 146 /**
AnnaBridge 167:e84263d55307 147 * @}
AnnaBridge 167:e84263d55307 148 */
AnnaBridge 167:e84263d55307 149
AnnaBridge 167:e84263d55307 150 /** @defgroup SYSTEM_LL_EC_EXTI_LINE SYSCFG EXTI LINE
AnnaBridge 167:e84263d55307 151 * @{
AnnaBridge 167:e84263d55307 152 */
AnnaBridge 167:e84263d55307 153 #define LL_SYSCFG_EXTI_LINE0 (uint32_t)(0x000FU << 16 | 0) /*!< EXTI_POSITION_0 | EXTICR[0] */
AnnaBridge 167:e84263d55307 154 #define LL_SYSCFG_EXTI_LINE1 (uint32_t)(0x00F0U << 16 | 0) /*!< EXTI_POSITION_4 | EXTICR[0] */
AnnaBridge 167:e84263d55307 155 #define LL_SYSCFG_EXTI_LINE2 (uint32_t)(0x0F00U << 16 | 0) /*!< EXTI_POSITION_8 | EXTICR[0] */
AnnaBridge 167:e84263d55307 156 #define LL_SYSCFG_EXTI_LINE3 (uint32_t)(0xF000U << 16 | 0) /*!< EXTI_POSITION_12 | EXTICR[0] */
AnnaBridge 167:e84263d55307 157 #define LL_SYSCFG_EXTI_LINE4 (uint32_t)(0x000FU << 16 | 1) /*!< EXTI_POSITION_0 | EXTICR[1] */
AnnaBridge 167:e84263d55307 158 #define LL_SYSCFG_EXTI_LINE5 (uint32_t)(0x00F0U << 16 | 1) /*!< EXTI_POSITION_4 | EXTICR[1] */
AnnaBridge 167:e84263d55307 159 #define LL_SYSCFG_EXTI_LINE6 (uint32_t)(0x0F00U << 16 | 1) /*!< EXTI_POSITION_8 | EXTICR[1] */
AnnaBridge 167:e84263d55307 160 #define LL_SYSCFG_EXTI_LINE7 (uint32_t)(0xF000U << 16 | 1) /*!< EXTI_POSITION_12 | EXTICR[1] */
AnnaBridge 167:e84263d55307 161 #define LL_SYSCFG_EXTI_LINE8 (uint32_t)(0x000FU << 16 | 2) /*!< EXTI_POSITION_0 | EXTICR[2] */
AnnaBridge 167:e84263d55307 162 #define LL_SYSCFG_EXTI_LINE9 (uint32_t)(0x00F0U << 16 | 2) /*!< EXTI_POSITION_4 | EXTICR[2] */
AnnaBridge 167:e84263d55307 163 #define LL_SYSCFG_EXTI_LINE10 (uint32_t)(0x0F00U << 16 | 2) /*!< EXTI_POSITION_8 | EXTICR[2] */
AnnaBridge 167:e84263d55307 164 #define LL_SYSCFG_EXTI_LINE11 (uint32_t)(0xF000U << 16 | 2) /*!< EXTI_POSITION_12 | EXTICR[2] */
AnnaBridge 167:e84263d55307 165 #define LL_SYSCFG_EXTI_LINE12 (uint32_t)(0x000FU << 16 | 3) /*!< EXTI_POSITION_0 | EXTICR[3] */
AnnaBridge 167:e84263d55307 166 #define LL_SYSCFG_EXTI_LINE13 (uint32_t)(0x00F0U << 16 | 3) /*!< EXTI_POSITION_4 | EXTICR[3] */
AnnaBridge 167:e84263d55307 167 #define LL_SYSCFG_EXTI_LINE14 (uint32_t)(0x0F00U << 16 | 3) /*!< EXTI_POSITION_8 | EXTICR[3] */
AnnaBridge 167:e84263d55307 168 #define LL_SYSCFG_EXTI_LINE15 (uint32_t)(0xF000U << 16 | 3) /*!< EXTI_POSITION_12 | EXTICR[3] */
AnnaBridge 167:e84263d55307 169 /**
AnnaBridge 167:e84263d55307 170 * @}
AnnaBridge 167:e84263d55307 171 */
AnnaBridge 167:e84263d55307 172
AnnaBridge 167:e84263d55307 173 /** @defgroup SYSTEM_LL_EC_TRACE DBGMCU TRACE Pin Assignment
AnnaBridge 167:e84263d55307 174 * @{
AnnaBridge 167:e84263d55307 175 */
AnnaBridge 167:e84263d55307 176 #define LL_DBGMCU_TRACE_NONE 0x00000000U /*!< TRACE pins not assigned (default state) */
AnnaBridge 167:e84263d55307 177 #define LL_DBGMCU_TRACE_ASYNCH DBGMCU_CR_TRACE_IOEN /*!< TRACE pin assignment for Asynchronous Mode */
AnnaBridge 167:e84263d55307 178 #define LL_DBGMCU_TRACE_SYNCH_SIZE1 (DBGMCU_CR_TRACE_IOEN | DBGMCU_CR_TRACE_MODE_0) /*!< TRACE pin assignment for Synchronous Mode with a TRACEDATA size of 1 */
AnnaBridge 167:e84263d55307 179 #define LL_DBGMCU_TRACE_SYNCH_SIZE2 (DBGMCU_CR_TRACE_IOEN | DBGMCU_CR_TRACE_MODE_1) /*!< TRACE pin assignment for Synchronous Mode with a TRACEDATA size of 2 */
AnnaBridge 167:e84263d55307 180 #define LL_DBGMCU_TRACE_SYNCH_SIZE4 (DBGMCU_CR_TRACE_IOEN | DBGMCU_CR_TRACE_MODE) /*!< TRACE pin assignment for Synchronous Mode with a TRACEDATA size of 4 */
AnnaBridge 167:e84263d55307 181 /**
AnnaBridge 167:e84263d55307 182 * @}
AnnaBridge 167:e84263d55307 183 */
AnnaBridge 167:e84263d55307 184
AnnaBridge 167:e84263d55307 185 /** @defgroup SYSTEM_LL_EC_APB1_GRP1_STOP_IP DBGMCU APB1 GRP1 STOP IP
AnnaBridge 167:e84263d55307 186 * @{
AnnaBridge 167:e84263d55307 187 */
AnnaBridge 167:e84263d55307 188 #define LL_DBGMCU_APB1_GRP1_TIM2_STOP DBGMCU_APB1_FZ_DBG_TIM2_STOP /*!< TIM2 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 189 #define LL_DBGMCU_APB1_GRP1_TIM3_STOP DBGMCU_APB1_FZ_DBG_TIM3_STOP /*!< TIM3 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 190 #define LL_DBGMCU_APB1_GRP1_TIM4_STOP DBGMCU_APB1_FZ_DBG_TIM4_STOP /*!< TIM4 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 191 #define LL_DBGMCU_APB1_GRP1_TIM5_STOP DBGMCU_APB1_FZ_DBG_TIM5_STOP /*!< TIM5 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 192 #define LL_DBGMCU_APB1_GRP1_TIM6_STOP DBGMCU_APB1_FZ_DBG_TIM6_STOP /*!< TIM6 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 193 #define LL_DBGMCU_APB1_GRP1_TIM7_STOP DBGMCU_APB1_FZ_DBG_TIM7_STOP /*!< TIM7 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 194 #define LL_DBGMCU_APB1_GRP1_TIM12_STOP DBGMCU_APB1_FZ_DBG_TIM12_STOP /*!< TIM12 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 195 #define LL_DBGMCU_APB1_GRP1_TIM13_STOP DBGMCU_APB1_FZ_DBG_TIM13_STOP /*!< TIM13 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 196 #define LL_DBGMCU_APB1_GRP1_TIM14_STOP DBGMCU_APB1_FZ_DBG_TIM14_STOP /*!< TIM14 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 197 #define LL_DBGMCU_APB1_GRP1_RTC_STOP DBGMCU_APB1_FZ_DBG_RTC_STOP /*!< RTC counter stopped when core is halted */
AnnaBridge 167:e84263d55307 198 #define LL_DBGMCU_APB1_GRP1_WWDG_STOP DBGMCU_APB1_FZ_DBG_WWDG_STOP /*!< Debug Window Watchdog stopped when Core is halted */
AnnaBridge 167:e84263d55307 199 #define LL_DBGMCU_APB1_GRP1_IWDG_STOP DBGMCU_APB1_FZ_DBG_IWDG_STOP /*!< Debug Independent Watchdog stopped when Core is halted */
AnnaBridge 167:e84263d55307 200 #define LL_DBGMCU_APB1_GRP1_I2C1_STOP DBGMCU_APB1_FZ_DBG_I2C1_SMBUS_TIMEOUT /*!< I2C1 SMBUS timeout mode stopped when Core is halted */
AnnaBridge 167:e84263d55307 201 #define LL_DBGMCU_APB1_GRP1_I2C2_STOP DBGMCU_APB1_FZ_DBG_I2C2_SMBUS_TIMEOUT /*!< I2C2 SMBUS timeout mode stopped when Core is halted */
AnnaBridge 167:e84263d55307 202 #define LL_DBGMCU_APB1_GRP1_I2C3_STOP DBGMCU_APB1_FZ_DBG_I2C3_SMBUS_TIMEOUT /*!< I2C3 SMBUS timeout mode stopped when Core is halted */
AnnaBridge 167:e84263d55307 203 #define LL_DBGMCU_APB1_GRP1_CAN1_STOP DBGMCU_APB1_FZ_DBG_CAN1_STOP /*!< CAN1 debug stopped when Core is halted */
AnnaBridge 167:e84263d55307 204 #define LL_DBGMCU_APB1_GRP1_CAN2_STOP DBGMCU_APB1_FZ_DBG_CAN2_STOP /*!< CAN2 debug stopped when Core is halted */
AnnaBridge 167:e84263d55307 205 /**
AnnaBridge 167:e84263d55307 206 * @}
AnnaBridge 167:e84263d55307 207 */
AnnaBridge 167:e84263d55307 208
AnnaBridge 167:e84263d55307 209 /** @defgroup SYSTEM_LL_EC_APB2_GRP1_STOP_IP DBGMCU APB2 GRP1 STOP IP
AnnaBridge 167:e84263d55307 210 * @{
AnnaBridge 167:e84263d55307 211 */
AnnaBridge 167:e84263d55307 212 #define LL_DBGMCU_APB2_GRP1_TIM1_STOP DBGMCU_APB2_FZ_DBG_TIM1_STOP /*!< TIM1 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 213 #define LL_DBGMCU_APB2_GRP1_TIM8_STOP DBGMCU_APB2_FZ_DBG_TIM8_STOP /*!< TIM8 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 214 #define LL_DBGMCU_APB2_GRP1_TIM9_STOP DBGMCU_APB2_FZ_DBG_TIM9_STOP /*!< TIM9 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 215 #define LL_DBGMCU_APB2_GRP1_TIM10_STOP DBGMCU_APB2_FZ_DBG_TIM10_STOP /*!< TIM10 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 216 #define LL_DBGMCU_APB2_GRP1_TIM11_STOP DBGMCU_APB2_FZ_DBG_TIM11_STOP /*!< TIM11 counter stopped when core is halted */
AnnaBridge 167:e84263d55307 217 /**
AnnaBridge 167:e84263d55307 218 * @}
AnnaBridge 167:e84263d55307 219 */
AnnaBridge 167:e84263d55307 220
AnnaBridge 167:e84263d55307 221 /** @defgroup SYSTEM_LL_EC_LATENCY FLASH LATENCY
AnnaBridge 167:e84263d55307 222 * @{
AnnaBridge 167:e84263d55307 223 */
AnnaBridge 167:e84263d55307 224 #define LL_FLASH_LATENCY_0 FLASH_ACR_LATENCY_0WS /*!< FLASH Zero wait state */
AnnaBridge 167:e84263d55307 225 #define LL_FLASH_LATENCY_1 FLASH_ACR_LATENCY_1WS /*!< FLASH One wait state */
AnnaBridge 167:e84263d55307 226 #define LL_FLASH_LATENCY_2 FLASH_ACR_LATENCY_2WS /*!< FLASH Two wait states */
AnnaBridge 167:e84263d55307 227 #define LL_FLASH_LATENCY_3 FLASH_ACR_LATENCY_3WS /*!< FLASH Three wait states */
AnnaBridge 167:e84263d55307 228 #define LL_FLASH_LATENCY_4 FLASH_ACR_LATENCY_4WS /*!< FLASH Four wait states */
AnnaBridge 167:e84263d55307 229 #define LL_FLASH_LATENCY_5 FLASH_ACR_LATENCY_5WS /*!< FLASH five wait state */
AnnaBridge 167:e84263d55307 230 #define LL_FLASH_LATENCY_6 FLASH_ACR_LATENCY_6WS /*!< FLASH six wait state */
AnnaBridge 167:e84263d55307 231 #define LL_FLASH_LATENCY_7 FLASH_ACR_LATENCY_7WS /*!< FLASH seven wait states */
AnnaBridge 167:e84263d55307 232 /**
AnnaBridge 167:e84263d55307 233 * @}
AnnaBridge 167:e84263d55307 234 */
AnnaBridge 167:e84263d55307 235
AnnaBridge 167:e84263d55307 236 /**
AnnaBridge 167:e84263d55307 237 * @}
AnnaBridge 167:e84263d55307 238 */
AnnaBridge 167:e84263d55307 239
AnnaBridge 167:e84263d55307 240 /* Exported macro ------------------------------------------------------------*/
AnnaBridge 167:e84263d55307 241
AnnaBridge 167:e84263d55307 242 /* Exported functions --------------------------------------------------------*/
AnnaBridge 167:e84263d55307 243 /** @defgroup SYSTEM_LL_Exported_Functions SYSTEM Exported Functions
AnnaBridge 167:e84263d55307 244 * @{
AnnaBridge 167:e84263d55307 245 */
AnnaBridge 167:e84263d55307 246
AnnaBridge 167:e84263d55307 247 /** @defgroup SYSTEM_LL_EF_SYSCFG SYSCFG
AnnaBridge 167:e84263d55307 248 * @{
AnnaBridge 167:e84263d55307 249 */
AnnaBridge 167:e84263d55307 250 /**
AnnaBridge 167:e84263d55307 251 * @brief Set memory mapping at address 0x00000000
AnnaBridge 167:e84263d55307 252 * @rmtoll SYSCFG_MEMRMP MEM_MODE LL_SYSCFG_SetRemapMemory
AnnaBridge 167:e84263d55307 253 * @param Memory This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 254 * @arg @ref LL_SYSCFG_REMAP_FLASH
AnnaBridge 167:e84263d55307 255 * @arg @ref LL_SYSCFG_REMAP_SYSTEMFLASH
AnnaBridge 167:e84263d55307 256 * @arg @ref LL_SYSCFG_REMAP_FSMC
AnnaBridge 167:e84263d55307 257 * @arg @ref LL_SYSCFG_REMAP_SRAM
AnnaBridge 167:e84263d55307 258 * @retval None
AnnaBridge 167:e84263d55307 259 */
AnnaBridge 167:e84263d55307 260 __STATIC_INLINE void LL_SYSCFG_SetRemapMemory(uint32_t Memory)
AnnaBridge 167:e84263d55307 261 {
AnnaBridge 167:e84263d55307 262 MODIFY_REG(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE, Memory);
AnnaBridge 167:e84263d55307 263 }
AnnaBridge 167:e84263d55307 264
AnnaBridge 167:e84263d55307 265 /**
AnnaBridge 167:e84263d55307 266 * @brief Get memory mapping at address 0x00000000
AnnaBridge 167:e84263d55307 267 * @rmtoll SYSCFG_MEMRMP MEM_MODE LL_SYSCFG_GetRemapMemory
AnnaBridge 167:e84263d55307 268 * @retval Returned value can be one of the following values:
AnnaBridge 167:e84263d55307 269 * @arg @ref LL_SYSCFG_REMAP_FLASH
AnnaBridge 167:e84263d55307 270 * @arg @ref LL_SYSCFG_REMAP_SYSTEMFLASH
AnnaBridge 167:e84263d55307 271 * @arg @ref LL_SYSCFG_REMAP_SRAM
AnnaBridge 167:e84263d55307 272 * @arg @ref LL_SYSCFG_REMAP_FSMC
AnnaBridge 167:e84263d55307 273 */
AnnaBridge 167:e84263d55307 274 __STATIC_INLINE uint32_t LL_SYSCFG_GetRemapMemory(void)
AnnaBridge 167:e84263d55307 275 {
AnnaBridge 167:e84263d55307 276 return (uint32_t)(READ_BIT(SYSCFG->MEMRMP, SYSCFG_MEMRMP_MEM_MODE));
AnnaBridge 167:e84263d55307 277 }
AnnaBridge 167:e84263d55307 278
AnnaBridge 167:e84263d55307 279 /**
AnnaBridge 167:e84263d55307 280 * @brief Enables the Compensation cell Power Down
AnnaBridge 167:e84263d55307 281 * @rmtoll SYSCFG_CMPCR CMP_PD LL_SYSCFG_EnableCompensationCell
AnnaBridge 167:e84263d55307 282 * @note The I/O compensation cell can be used only when the device supply
AnnaBridge 167:e84263d55307 283 * voltage ranges from 2.4 to 3.6 V
AnnaBridge 167:e84263d55307 284 * @retval None
AnnaBridge 167:e84263d55307 285 */
AnnaBridge 167:e84263d55307 286 __STATIC_INLINE void LL_SYSCFG_EnableCompensationCell(void)
AnnaBridge 167:e84263d55307 287 {
AnnaBridge 167:e84263d55307 288 SET_BIT(SYSCFG->CMPCR, SYSCFG_CMPCR_CMP_PD);
AnnaBridge 167:e84263d55307 289 }
AnnaBridge 167:e84263d55307 290
AnnaBridge 167:e84263d55307 291 /**
AnnaBridge 167:e84263d55307 292 * @brief Disables the Compensation cell Power Down
AnnaBridge 167:e84263d55307 293 * @rmtoll SYSCFG_CMPCR CMP_PD LL_SYSCFG_DisableCompensationCell
AnnaBridge 167:e84263d55307 294 * @note The I/O compensation cell can be used only when the device supply
AnnaBridge 167:e84263d55307 295 * voltage ranges from 2.4 to 3.6 V
AnnaBridge 167:e84263d55307 296 * @retval None
AnnaBridge 167:e84263d55307 297 */
AnnaBridge 167:e84263d55307 298 __STATIC_INLINE void LL_SYSCFG_DisableCompensationCell(void)
AnnaBridge 167:e84263d55307 299 {
AnnaBridge 167:e84263d55307 300 CLEAR_BIT(SYSCFG->CMPCR, SYSCFG_CMPCR_CMP_PD);
AnnaBridge 167:e84263d55307 301 }
AnnaBridge 167:e84263d55307 302
AnnaBridge 167:e84263d55307 303 /**
AnnaBridge 167:e84263d55307 304 * @brief Get Compensation Cell ready Flag
AnnaBridge 167:e84263d55307 305 * @rmtoll SYSCFG_CMPCR READY LL_SYSCFG_IsActiveFlag_CMPCR
AnnaBridge 167:e84263d55307 306 * @retval State of bit (1 or 0).
AnnaBridge 167:e84263d55307 307 */
AnnaBridge 167:e84263d55307 308 __STATIC_INLINE uint32_t LL_SYSCFG_IsActiveFlag_CMPCR(void)
AnnaBridge 167:e84263d55307 309 {
AnnaBridge 167:e84263d55307 310 return (READ_BIT(SYSCFG->CMPCR, SYSCFG_CMPCR_READY) == (SYSCFG_CMPCR_READY));
AnnaBridge 167:e84263d55307 311 }
AnnaBridge 167:e84263d55307 312 #if defined(SYSCFG_PMC_MII_RMII_SEL)
AnnaBridge 167:e84263d55307 313 /**
AnnaBridge 167:e84263d55307 314 * @brief Select Ethernet PHY interface
AnnaBridge 167:e84263d55307 315 * @rmtoll SYSCFG_PMC MII_RMII_SEL LL_SYSCFG_SetPHYInterface
AnnaBridge 167:e84263d55307 316 * @param Interface This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 317 * @arg @ref LL_SYSCFG_PMC_ETHMII
AnnaBridge 167:e84263d55307 318 * @arg @ref LL_SYSCFG_PMC_ETHRMII
AnnaBridge 167:e84263d55307 319 * @retval None
AnnaBridge 167:e84263d55307 320 */
AnnaBridge 167:e84263d55307 321 __STATIC_INLINE void LL_SYSCFG_SetPHYInterface(uint32_t Interface)
AnnaBridge 167:e84263d55307 322 {
AnnaBridge 167:e84263d55307 323 MODIFY_REG(SYSCFG->PMC, SYSCFG_PMC_MII_RMII_SEL, Interface);
AnnaBridge 167:e84263d55307 324 }
AnnaBridge 167:e84263d55307 325
AnnaBridge 167:e84263d55307 326 /**
AnnaBridge 167:e84263d55307 327 * @brief Get Ethernet PHY interface
AnnaBridge 167:e84263d55307 328 * @rmtoll SYSCFG_PMC MII_RMII_SEL LL_SYSCFG_GetPHYInterface
AnnaBridge 167:e84263d55307 329 * @retval Returned value can be one of the following values:
AnnaBridge 167:e84263d55307 330 * @arg @ref LL_SYSCFG_PMC_ETHMII
AnnaBridge 167:e84263d55307 331 * @arg @ref LL_SYSCFG_PMC_ETHRMII
AnnaBridge 167:e84263d55307 332 * @retval None
AnnaBridge 167:e84263d55307 333 */
AnnaBridge 167:e84263d55307 334 __STATIC_INLINE uint32_t LL_SYSCFG_GetPHYInterface(void)
AnnaBridge 167:e84263d55307 335 {
AnnaBridge 167:e84263d55307 336 return (uint32_t)(READ_BIT(SYSCFG->PMC, SYSCFG_PMC_MII_RMII_SEL));
AnnaBridge 167:e84263d55307 337 }
AnnaBridge 167:e84263d55307 338 #endif /* SYSCFG_PMC_MII_RMII_SEL */
AnnaBridge 167:e84263d55307 339
AnnaBridge 167:e84263d55307 340
AnnaBridge 167:e84263d55307 341
AnnaBridge 167:e84263d55307 342 /**
AnnaBridge 167:e84263d55307 343 * @brief Configure source input for the EXTI external interrupt.
AnnaBridge 167:e84263d55307 344 * @rmtoll SYSCFG_EXTICR1 EXTIx LL_SYSCFG_SetEXTISource\n
AnnaBridge 167:e84263d55307 345 * SYSCFG_EXTICR2 EXTIx LL_SYSCFG_SetEXTISource\n
AnnaBridge 167:e84263d55307 346 * SYSCFG_EXTICR3 EXTIx LL_SYSCFG_SetEXTISource\n
AnnaBridge 167:e84263d55307 347 * SYSCFG_EXTICR4 EXTIx LL_SYSCFG_SetEXTISource
AnnaBridge 167:e84263d55307 348 * @param Port This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 349 * @arg @ref LL_SYSCFG_EXTI_PORTA
AnnaBridge 167:e84263d55307 350 * @arg @ref LL_SYSCFG_EXTI_PORTB
AnnaBridge 167:e84263d55307 351 * @arg @ref LL_SYSCFG_EXTI_PORTC
AnnaBridge 167:e84263d55307 352 * @arg @ref LL_SYSCFG_EXTI_PORTD
AnnaBridge 167:e84263d55307 353 * @arg @ref LL_SYSCFG_EXTI_PORTE
AnnaBridge 167:e84263d55307 354 * @arg @ref LL_SYSCFG_EXTI_PORTF (*)
AnnaBridge 167:e84263d55307 355 * @arg @ref LL_SYSCFG_EXTI_PORTG (*)
AnnaBridge 167:e84263d55307 356 * @arg @ref LL_SYSCFG_EXTI_PORTH
AnnaBridge 167:e84263d55307 357 *
AnnaBridge 167:e84263d55307 358 * (*) value not defined in all devices
AnnaBridge 167:e84263d55307 359 * @param Line This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 360 * @arg @ref LL_SYSCFG_EXTI_LINE0
AnnaBridge 167:e84263d55307 361 * @arg @ref LL_SYSCFG_EXTI_LINE1
AnnaBridge 167:e84263d55307 362 * @arg @ref LL_SYSCFG_EXTI_LINE2
AnnaBridge 167:e84263d55307 363 * @arg @ref LL_SYSCFG_EXTI_LINE3
AnnaBridge 167:e84263d55307 364 * @arg @ref LL_SYSCFG_EXTI_LINE4
AnnaBridge 167:e84263d55307 365 * @arg @ref LL_SYSCFG_EXTI_LINE5
AnnaBridge 167:e84263d55307 366 * @arg @ref LL_SYSCFG_EXTI_LINE6
AnnaBridge 167:e84263d55307 367 * @arg @ref LL_SYSCFG_EXTI_LINE7
AnnaBridge 167:e84263d55307 368 * @arg @ref LL_SYSCFG_EXTI_LINE8
AnnaBridge 167:e84263d55307 369 * @arg @ref LL_SYSCFG_EXTI_LINE9
AnnaBridge 167:e84263d55307 370 * @arg @ref LL_SYSCFG_EXTI_LINE10
AnnaBridge 167:e84263d55307 371 * @arg @ref LL_SYSCFG_EXTI_LINE11
AnnaBridge 167:e84263d55307 372 * @arg @ref LL_SYSCFG_EXTI_LINE12
AnnaBridge 167:e84263d55307 373 * @arg @ref LL_SYSCFG_EXTI_LINE13
AnnaBridge 167:e84263d55307 374 * @arg @ref LL_SYSCFG_EXTI_LINE14
AnnaBridge 167:e84263d55307 375 * @arg @ref LL_SYSCFG_EXTI_LINE15
AnnaBridge 167:e84263d55307 376 * @retval None
AnnaBridge 167:e84263d55307 377 */
AnnaBridge 167:e84263d55307 378 __STATIC_INLINE void LL_SYSCFG_SetEXTISource(uint32_t Port, uint32_t Line)
AnnaBridge 167:e84263d55307 379 {
AnnaBridge 167:e84263d55307 380 MODIFY_REG(SYSCFG->EXTICR[Line & 0xFF], (Line >> 16), Port << POSITION_VAL((Line >> 16)));
AnnaBridge 167:e84263d55307 381 }
AnnaBridge 167:e84263d55307 382
AnnaBridge 167:e84263d55307 383 /**
AnnaBridge 167:e84263d55307 384 * @brief Get the configured defined for specific EXTI Line
AnnaBridge 167:e84263d55307 385 * @rmtoll SYSCFG_EXTICR1 EXTIx LL_SYSCFG_GetEXTISource\n
AnnaBridge 167:e84263d55307 386 * SYSCFG_EXTICR2 EXTIx LL_SYSCFG_GetEXTISource\n
AnnaBridge 167:e84263d55307 387 * SYSCFG_EXTICR3 EXTIx LL_SYSCFG_GetEXTISource\n
AnnaBridge 167:e84263d55307 388 * SYSCFG_EXTICR4 EXTIx LL_SYSCFG_GetEXTISource
AnnaBridge 167:e84263d55307 389 * @param Line This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 390 * @arg @ref LL_SYSCFG_EXTI_LINE0
AnnaBridge 167:e84263d55307 391 * @arg @ref LL_SYSCFG_EXTI_LINE1
AnnaBridge 167:e84263d55307 392 * @arg @ref LL_SYSCFG_EXTI_LINE2
AnnaBridge 167:e84263d55307 393 * @arg @ref LL_SYSCFG_EXTI_LINE3
AnnaBridge 167:e84263d55307 394 * @arg @ref LL_SYSCFG_EXTI_LINE4
AnnaBridge 167:e84263d55307 395 * @arg @ref LL_SYSCFG_EXTI_LINE5
AnnaBridge 167:e84263d55307 396 * @arg @ref LL_SYSCFG_EXTI_LINE6
AnnaBridge 167:e84263d55307 397 * @arg @ref LL_SYSCFG_EXTI_LINE7
AnnaBridge 167:e84263d55307 398 * @arg @ref LL_SYSCFG_EXTI_LINE8
AnnaBridge 167:e84263d55307 399 * @arg @ref LL_SYSCFG_EXTI_LINE9
AnnaBridge 167:e84263d55307 400 * @arg @ref LL_SYSCFG_EXTI_LINE10
AnnaBridge 167:e84263d55307 401 * @arg @ref LL_SYSCFG_EXTI_LINE11
AnnaBridge 167:e84263d55307 402 * @arg @ref LL_SYSCFG_EXTI_LINE12
AnnaBridge 167:e84263d55307 403 * @arg @ref LL_SYSCFG_EXTI_LINE13
AnnaBridge 167:e84263d55307 404 * @arg @ref LL_SYSCFG_EXTI_LINE14
AnnaBridge 167:e84263d55307 405 * @arg @ref LL_SYSCFG_EXTI_LINE15
AnnaBridge 167:e84263d55307 406 * @retval Returned value can be one of the following values:
AnnaBridge 167:e84263d55307 407 * @arg @ref LL_SYSCFG_EXTI_PORTA
AnnaBridge 167:e84263d55307 408 * @arg @ref LL_SYSCFG_EXTI_PORTB
AnnaBridge 167:e84263d55307 409 * @arg @ref LL_SYSCFG_EXTI_PORTC
AnnaBridge 167:e84263d55307 410 * @arg @ref LL_SYSCFG_EXTI_PORTD
AnnaBridge 167:e84263d55307 411 * @arg @ref LL_SYSCFG_EXTI_PORTE
AnnaBridge 167:e84263d55307 412 * @arg @ref LL_SYSCFG_EXTI_PORTF (*)
AnnaBridge 167:e84263d55307 413 * @arg @ref LL_SYSCFG_EXTI_PORTG (*)
AnnaBridge 167:e84263d55307 414 * @arg @ref LL_SYSCFG_EXTI_PORTH
AnnaBridge 167:e84263d55307 415 * (*) value not defined in all devices
AnnaBridge 167:e84263d55307 416 */
AnnaBridge 167:e84263d55307 417 __STATIC_INLINE uint32_t LL_SYSCFG_GetEXTISource(uint32_t Line)
AnnaBridge 167:e84263d55307 418 {
AnnaBridge 167:e84263d55307 419 return (uint32_t)(READ_BIT(SYSCFG->EXTICR[Line & 0xFF], (Line >> 16)) >> POSITION_VAL(Line >> 16));
AnnaBridge 167:e84263d55307 420 }
AnnaBridge 167:e84263d55307 421
AnnaBridge 167:e84263d55307 422 /**
AnnaBridge 167:e84263d55307 423 * @}
AnnaBridge 167:e84263d55307 424 */
AnnaBridge 167:e84263d55307 425
AnnaBridge 167:e84263d55307 426
AnnaBridge 167:e84263d55307 427 /** @defgroup SYSTEM_LL_EF_DBGMCU DBGMCU
AnnaBridge 167:e84263d55307 428 * @{
AnnaBridge 167:e84263d55307 429 */
AnnaBridge 167:e84263d55307 430
AnnaBridge 167:e84263d55307 431 /**
AnnaBridge 167:e84263d55307 432 * @brief Return the device identifier
AnnaBridge 167:e84263d55307 433 * @note For STM32F2xxxx ,the device ID is 0x411
AnnaBridge 167:e84263d55307 434 * @rmtoll DBGMCU_IDCODE DEV_ID LL_DBGMCU_GetDeviceID
AnnaBridge 167:e84263d55307 435 * @retval Values between Min_Data=0x00 and Max_Data=0xFFF
AnnaBridge 167:e84263d55307 436 */
AnnaBridge 167:e84263d55307 437 __STATIC_INLINE uint32_t LL_DBGMCU_GetDeviceID(void)
AnnaBridge 167:e84263d55307 438 {
AnnaBridge 167:e84263d55307 439 return (uint32_t)(READ_BIT(DBGMCU->IDCODE, DBGMCU_IDCODE_DEV_ID));
AnnaBridge 167:e84263d55307 440 }
AnnaBridge 167:e84263d55307 441
AnnaBridge 167:e84263d55307 442 /**
AnnaBridge 167:e84263d55307 443 * @brief Return the device revision identifier
AnnaBridge 167:e84263d55307 444 * @note This field indicates the revision of the device.
AnnaBridge 167:e84263d55307 445 For example, it is read as revA -> 0x1000,revZ -> 0x1001, revB -> 0x2000, revY -> 0x2001, revX -> 0x2003, rev1 -> 0x2007, revV -> 0x200F, rev2 -> 0x201F
AnnaBridge 167:e84263d55307 446 * @rmtoll DBGMCU_IDCODE REV_ID LL_DBGMCU_GetRevisionID
AnnaBridge 167:e84263d55307 447 * @retval Values between Min_Data=0x00 and Max_Data=0xFFFF
AnnaBridge 167:e84263d55307 448 */
AnnaBridge 167:e84263d55307 449 __STATIC_INLINE uint32_t LL_DBGMCU_GetRevisionID(void)
AnnaBridge 167:e84263d55307 450 {
AnnaBridge 167:e84263d55307 451 return (uint32_t)(READ_BIT(DBGMCU->IDCODE, DBGMCU_IDCODE_REV_ID) >> DBGMCU_IDCODE_REV_ID_Pos);
AnnaBridge 167:e84263d55307 452 }
AnnaBridge 167:e84263d55307 453
AnnaBridge 167:e84263d55307 454 /**
AnnaBridge 167:e84263d55307 455 * @brief Enable the Debug Module during SLEEP mode
AnnaBridge 167:e84263d55307 456 * @rmtoll DBGMCU_CR DBG_SLEEP LL_DBGMCU_EnableDBGSleepMode
AnnaBridge 167:e84263d55307 457 * @retval None
AnnaBridge 167:e84263d55307 458 */
AnnaBridge 167:e84263d55307 459 __STATIC_INLINE void LL_DBGMCU_EnableDBGSleepMode(void)
AnnaBridge 167:e84263d55307 460 {
AnnaBridge 167:e84263d55307 461 SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP);
AnnaBridge 167:e84263d55307 462 }
AnnaBridge 167:e84263d55307 463
AnnaBridge 167:e84263d55307 464 /**
AnnaBridge 167:e84263d55307 465 * @brief Disable the Debug Module during SLEEP mode
AnnaBridge 167:e84263d55307 466 * @rmtoll DBGMCU_CR DBG_SLEEP LL_DBGMCU_DisableDBGSleepMode
AnnaBridge 167:e84263d55307 467 * @retval None
AnnaBridge 167:e84263d55307 468 */
AnnaBridge 167:e84263d55307 469 __STATIC_INLINE void LL_DBGMCU_DisableDBGSleepMode(void)
AnnaBridge 167:e84263d55307 470 {
AnnaBridge 167:e84263d55307 471 CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP);
AnnaBridge 167:e84263d55307 472 }
AnnaBridge 167:e84263d55307 473
AnnaBridge 167:e84263d55307 474 /**
AnnaBridge 167:e84263d55307 475 * @brief Enable the Debug Module during STOP mode
AnnaBridge 167:e84263d55307 476 * @rmtoll DBGMCU_CR DBG_STOP LL_DBGMCU_EnableDBGStopMode
AnnaBridge 167:e84263d55307 477 * @retval None
AnnaBridge 167:e84263d55307 478 */
AnnaBridge 167:e84263d55307 479 __STATIC_INLINE void LL_DBGMCU_EnableDBGStopMode(void)
AnnaBridge 167:e84263d55307 480 {
AnnaBridge 167:e84263d55307 481 SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP);
AnnaBridge 167:e84263d55307 482 }
AnnaBridge 167:e84263d55307 483
AnnaBridge 167:e84263d55307 484 /**
AnnaBridge 167:e84263d55307 485 * @brief Disable the Debug Module during STOP mode
AnnaBridge 167:e84263d55307 486 * @rmtoll DBGMCU_CR DBG_STOP LL_DBGMCU_DisableDBGStopMode
AnnaBridge 167:e84263d55307 487 * @retval None
AnnaBridge 167:e84263d55307 488 */
AnnaBridge 167:e84263d55307 489 __STATIC_INLINE void LL_DBGMCU_DisableDBGStopMode(void)
AnnaBridge 167:e84263d55307 490 {
AnnaBridge 167:e84263d55307 491 CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP);
AnnaBridge 167:e84263d55307 492 }
AnnaBridge 167:e84263d55307 493
AnnaBridge 167:e84263d55307 494 /**
AnnaBridge 167:e84263d55307 495 * @brief Enable the Debug Module during STANDBY mode
AnnaBridge 167:e84263d55307 496 * @rmtoll DBGMCU_CR DBG_STANDBY LL_DBGMCU_EnableDBGStandbyMode
AnnaBridge 167:e84263d55307 497 * @retval None
AnnaBridge 167:e84263d55307 498 */
AnnaBridge 167:e84263d55307 499 __STATIC_INLINE void LL_DBGMCU_EnableDBGStandbyMode(void)
AnnaBridge 167:e84263d55307 500 {
AnnaBridge 167:e84263d55307 501 SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY);
AnnaBridge 167:e84263d55307 502 }
AnnaBridge 167:e84263d55307 503
AnnaBridge 167:e84263d55307 504 /**
AnnaBridge 167:e84263d55307 505 * @brief Disable the Debug Module during STANDBY mode
AnnaBridge 167:e84263d55307 506 * @rmtoll DBGMCU_CR DBG_STANDBY LL_DBGMCU_DisableDBGStandbyMode
AnnaBridge 167:e84263d55307 507 * @retval None
AnnaBridge 167:e84263d55307 508 */
AnnaBridge 167:e84263d55307 509 __STATIC_INLINE void LL_DBGMCU_DisableDBGStandbyMode(void)
AnnaBridge 167:e84263d55307 510 {
AnnaBridge 167:e84263d55307 511 CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY);
AnnaBridge 167:e84263d55307 512 }
AnnaBridge 167:e84263d55307 513
AnnaBridge 167:e84263d55307 514 /**
AnnaBridge 167:e84263d55307 515 * @brief Set Trace pin assignment control
AnnaBridge 167:e84263d55307 516 * @rmtoll DBGMCU_CR TRACE_IOEN LL_DBGMCU_SetTracePinAssignment\n
AnnaBridge 167:e84263d55307 517 * DBGMCU_CR TRACE_MODE LL_DBGMCU_SetTracePinAssignment
AnnaBridge 167:e84263d55307 518 * @param PinAssignment This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 519 * @arg @ref LL_DBGMCU_TRACE_NONE
AnnaBridge 167:e84263d55307 520 * @arg @ref LL_DBGMCU_TRACE_ASYNCH
AnnaBridge 167:e84263d55307 521 * @arg @ref LL_DBGMCU_TRACE_SYNCH_SIZE1
AnnaBridge 167:e84263d55307 522 * @arg @ref LL_DBGMCU_TRACE_SYNCH_SIZE2
AnnaBridge 167:e84263d55307 523 * @arg @ref LL_DBGMCU_TRACE_SYNCH_SIZE4
AnnaBridge 167:e84263d55307 524 * @retval None
AnnaBridge 167:e84263d55307 525 */
AnnaBridge 167:e84263d55307 526 __STATIC_INLINE void LL_DBGMCU_SetTracePinAssignment(uint32_t PinAssignment)
AnnaBridge 167:e84263d55307 527 {
AnnaBridge 167:e84263d55307 528 MODIFY_REG(DBGMCU->CR, DBGMCU_CR_TRACE_IOEN | DBGMCU_CR_TRACE_MODE, PinAssignment);
AnnaBridge 167:e84263d55307 529 }
AnnaBridge 167:e84263d55307 530
AnnaBridge 167:e84263d55307 531 /**
AnnaBridge 167:e84263d55307 532 * @brief Get Trace pin assignment control
AnnaBridge 167:e84263d55307 533 * @rmtoll DBGMCU_CR TRACE_IOEN LL_DBGMCU_GetTracePinAssignment\n
AnnaBridge 167:e84263d55307 534 * DBGMCU_CR TRACE_MODE LL_DBGMCU_GetTracePinAssignment
AnnaBridge 167:e84263d55307 535 * @retval Returned value can be one of the following values:
AnnaBridge 167:e84263d55307 536 * @arg @ref LL_DBGMCU_TRACE_NONE
AnnaBridge 167:e84263d55307 537 * @arg @ref LL_DBGMCU_TRACE_ASYNCH
AnnaBridge 167:e84263d55307 538 * @arg @ref LL_DBGMCU_TRACE_SYNCH_SIZE1
AnnaBridge 167:e84263d55307 539 * @arg @ref LL_DBGMCU_TRACE_SYNCH_SIZE2
AnnaBridge 167:e84263d55307 540 * @arg @ref LL_DBGMCU_TRACE_SYNCH_SIZE4
AnnaBridge 167:e84263d55307 541 */
AnnaBridge 167:e84263d55307 542 __STATIC_INLINE uint32_t LL_DBGMCU_GetTracePinAssignment(void)
AnnaBridge 167:e84263d55307 543 {
AnnaBridge 167:e84263d55307 544 return (uint32_t)(READ_BIT(DBGMCU->CR, DBGMCU_CR_TRACE_IOEN | DBGMCU_CR_TRACE_MODE));
AnnaBridge 167:e84263d55307 545 }
AnnaBridge 167:e84263d55307 546
AnnaBridge 167:e84263d55307 547 /**
AnnaBridge 167:e84263d55307 548 * @brief Freeze APB1 peripherals (group1 peripherals)
AnnaBridge 167:e84263d55307 549 * @rmtoll DBGMCU_APB1_FZ DBG_TIM2_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 550 * DBGMCU_APB1_FZ DBG_TIM3_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 551 * DBGMCU_APB1_FZ DBG_TIM4_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 552 * DBGMCU_APB1_FZ DBG_TIM5_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 553 * DBGMCU_APB1_FZ DBG_TIM6_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 554 * DBGMCU_APB1_FZ DBG_TIM7_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 555 * DBGMCU_APB1_FZ DBG_TIM12_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 556 * DBGMCU_APB1_FZ DBG_TIM13_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 557 * DBGMCU_APB1_FZ DBG_TIM14_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 558 * DBGMCU_APB1_FZ DBG_RTC_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 559 * DBGMCU_APB1_FZ DBG_WWDG_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 560 * DBGMCU_APB1_FZ DBG_IWDG_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 561 * DBGMCU_APB1_FZ DBG_I2C1_SMBUS_TIMEOUT LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 562 * DBGMCU_APB1_FZ DBG_I2C2_SMBUS_TIMEOUT LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 563 * DBGMCU_APB1_FZ DBG_I2C3_SMBUS_TIMEOUT LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 564 * DBGMCU_APB1_FZ DBG_CAN1_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 565 * DBGMCU_APB1_FZ DBG_CAN2_STOP LL_DBGMCU_APB1_GRP1_FreezePeriph
AnnaBridge 167:e84263d55307 566 * @param Periphs This parameter can be a combination of the following values:
AnnaBridge 167:e84263d55307 567 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM2_STOP
AnnaBridge 167:e84263d55307 568 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM3_STOP
AnnaBridge 167:e84263d55307 569 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM4_STOP
AnnaBridge 167:e84263d55307 570 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM5_STOP
AnnaBridge 167:e84263d55307 571 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM6_STOP
AnnaBridge 167:e84263d55307 572 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM7_STOP
AnnaBridge 167:e84263d55307 573 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM12_STOP
AnnaBridge 167:e84263d55307 574 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM13_STOP
AnnaBridge 167:e84263d55307 575 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM14_STOP
AnnaBridge 167:e84263d55307 576 * @arg @ref LL_DBGMCU_APB1_GRP1_RTC_STOP
AnnaBridge 167:e84263d55307 577 * @arg @ref LL_DBGMCU_APB1_GRP1_WWDG_STOP
AnnaBridge 167:e84263d55307 578 * @arg @ref LL_DBGMCU_APB1_GRP1_IWDG_STOP
AnnaBridge 167:e84263d55307 579 * @arg @ref LL_DBGMCU_APB1_GRP1_I2C1_STOP
AnnaBridge 167:e84263d55307 580 * @arg @ref LL_DBGMCU_APB1_GRP1_I2C2_STOP
AnnaBridge 167:e84263d55307 581 * @arg @ref LL_DBGMCU_APB1_GRP1_I2C3_STOP
AnnaBridge 167:e84263d55307 582 * @arg @ref LL_DBGMCU_APB1_GRP1_CAN1_STOP
AnnaBridge 167:e84263d55307 583 * @arg @ref LL_DBGMCU_APB1_GRP1_CAN2_STOP
AnnaBridge 167:e84263d55307 584 *
AnnaBridge 167:e84263d55307 585 * (*) value not defined in all devices.
AnnaBridge 167:e84263d55307 586 * @retval None
AnnaBridge 167:e84263d55307 587 */
AnnaBridge 167:e84263d55307 588 __STATIC_INLINE void LL_DBGMCU_APB1_GRP1_FreezePeriph(uint32_t Periphs)
AnnaBridge 167:e84263d55307 589 {
AnnaBridge 167:e84263d55307 590 SET_BIT(DBGMCU->APB1FZ, Periphs);
AnnaBridge 167:e84263d55307 591 }
AnnaBridge 167:e84263d55307 592
AnnaBridge 167:e84263d55307 593 /**
AnnaBridge 167:e84263d55307 594 * @brief Unfreeze APB1 peripherals (group1 peripherals)
AnnaBridge 167:e84263d55307 595 * @rmtoll DBGMCU_APB1_FZ DBG_TIM2_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 596 * DBGMCU_APB1_FZ DBG_TIM3_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 597 * DBGMCU_APB1_FZ DBG_TIM4_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 598 * DBGMCU_APB1_FZ DBG_TIM5_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 599 * DBGMCU_APB1_FZ DBG_TIM6_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 600 * DBGMCU_APB1_FZ DBG_TIM7_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 601 * DBGMCU_APB1_FZ DBG_TIM12_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 602 * DBGMCU_APB1_FZ DBG_TIM13_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 603 * DBGMCU_APB1_FZ DBG_TIM14_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 604 * DBGMCU_APB1_FZ DBG_RTC_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 605 * DBGMCU_APB1_FZ DBG_WWDG_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 606 * DBGMCU_APB1_FZ DBG_IWDG_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 607 * DBGMCU_APB1_FZ DBG_I2C1_SMBUS_TIMEOUT LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 608 * DBGMCU_APB1_FZ DBG_I2C2_SMBUS_TIMEOUT LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 609 * DBGMCU_APB1_FZ DBG_I2C3_SMBUS_TIMEOUT LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 610 * DBGMCU_APB1_FZ DBG_CAN1_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 611 * DBGMCU_APB1_FZ DBG_CAN2_STOP LL_DBGMCU_APB1_GRP1_UnFreezePeriph
AnnaBridge 167:e84263d55307 612 * @param Periphs This parameter can be a combination of the following values:
AnnaBridge 167:e84263d55307 613 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM2_STOP
AnnaBridge 167:e84263d55307 614 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM3_STOP
AnnaBridge 167:e84263d55307 615 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM4_STOP
AnnaBridge 167:e84263d55307 616 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM5_STOP
AnnaBridge 167:e84263d55307 617 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM6_STOP
AnnaBridge 167:e84263d55307 618 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM7_STOP
AnnaBridge 167:e84263d55307 619 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM12_STOP
AnnaBridge 167:e84263d55307 620 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM13_STOP
AnnaBridge 167:e84263d55307 621 * @arg @ref LL_DBGMCU_APB1_GRP1_TIM14_STOP
AnnaBridge 167:e84263d55307 622 * @arg @ref LL_DBGMCU_APB1_GRP1_RTC_STOP
AnnaBridge 167:e84263d55307 623 * @arg @ref LL_DBGMCU_APB1_GRP1_WWDG_STOP
AnnaBridge 167:e84263d55307 624 * @arg @ref LL_DBGMCU_APB1_GRP1_IWDG_STOP
AnnaBridge 167:e84263d55307 625 * @arg @ref LL_DBGMCU_APB1_GRP1_I2C1_STOP
AnnaBridge 167:e84263d55307 626 * @arg @ref LL_DBGMCU_APB1_GRP1_I2C2_STOP
AnnaBridge 167:e84263d55307 627 * @arg @ref LL_DBGMCU_APB1_GRP1_I2C3_STOP
AnnaBridge 167:e84263d55307 628 * @arg @ref LL_DBGMCU_APB1_GRP1_CAN1_STOP
AnnaBridge 167:e84263d55307 629 * @arg @ref LL_DBGMCU_APB1_GRP1_CAN2_STOP
AnnaBridge 167:e84263d55307 630 *
AnnaBridge 167:e84263d55307 631 * (*) value not defined in all devices.
AnnaBridge 167:e84263d55307 632 * @retval None
AnnaBridge 167:e84263d55307 633 */
AnnaBridge 167:e84263d55307 634 __STATIC_INLINE void LL_DBGMCU_APB1_GRP1_UnFreezePeriph(uint32_t Periphs)
AnnaBridge 167:e84263d55307 635 {
AnnaBridge 167:e84263d55307 636 CLEAR_BIT(DBGMCU->APB1FZ, Periphs);
AnnaBridge 167:e84263d55307 637 }
AnnaBridge 167:e84263d55307 638
AnnaBridge 167:e84263d55307 639 /**
AnnaBridge 167:e84263d55307 640 * @brief Freeze APB2 peripherals
AnnaBridge 167:e84263d55307 641 * @rmtoll DBGMCU_APB2_FZ DBG_TIM1_STOP LL_DBGMCU_APB2_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 642 * DBGMCU_APB2_FZ DBG_TIM8_STOP LL_DBGMCU_APB2_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 643 * DBGMCU_APB2_FZ DBG_TIM9_STOP LL_DBGMCU_APB2_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 644 * DBGMCU_APB2_FZ DBG_TIM10_STOP LL_DBGMCU_APB2_GRP1_FreezePeriph\n
AnnaBridge 167:e84263d55307 645 * DBGMCU_APB2_FZ DBG_TIM11_STOP LL_DBGMCU_APB2_GRP1_FreezePeriph
AnnaBridge 167:e84263d55307 646 * @param Periphs This parameter can be a combination of the following values:
AnnaBridge 167:e84263d55307 647 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM1_STOP
AnnaBridge 167:e84263d55307 648 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM8_STOP
AnnaBridge 167:e84263d55307 649 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM9_STOP
AnnaBridge 167:e84263d55307 650 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM10_STOP
AnnaBridge 167:e84263d55307 651 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM11_STOP
AnnaBridge 167:e84263d55307 652 *
AnnaBridge 167:e84263d55307 653 * (*) value not defined in all devices.
AnnaBridge 167:e84263d55307 654 * @retval None
AnnaBridge 167:e84263d55307 655 */
AnnaBridge 167:e84263d55307 656 __STATIC_INLINE void LL_DBGMCU_APB2_GRP1_FreezePeriph(uint32_t Periphs)
AnnaBridge 167:e84263d55307 657 {
AnnaBridge 167:e84263d55307 658 SET_BIT(DBGMCU->APB2FZ, Periphs);
AnnaBridge 167:e84263d55307 659 }
AnnaBridge 167:e84263d55307 660
AnnaBridge 167:e84263d55307 661 /**
AnnaBridge 167:e84263d55307 662 * @brief Unfreeze APB2 peripherals
AnnaBridge 167:e84263d55307 663 * @rmtoll DBGMCU_APB2_FZ DBG_TIM1_STOP LL_DBGMCU_APB2_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 664 * DBGMCU_APB2_FZ DBG_TIM8_STOP LL_DBGMCU_APB2_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 665 * DBGMCU_APB2_FZ DBG_TIM9_STOP LL_DBGMCU_APB2_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 666 * DBGMCU_APB2_FZ DBG_TIM10_STOP LL_DBGMCU_APB2_GRP1_UnFreezePeriph\n
AnnaBridge 167:e84263d55307 667 * DBGMCU_APB2_FZ DBG_TIM11_STOP LL_DBGMCU_APB2_GRP1_UnFreezePeriph
AnnaBridge 167:e84263d55307 668 * @param Periphs This parameter can be a combination of the following values:
AnnaBridge 167:e84263d55307 669 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM1_STOP
AnnaBridge 167:e84263d55307 670 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM8_STOP
AnnaBridge 167:e84263d55307 671 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM9_STOP
AnnaBridge 167:e84263d55307 672 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM10_STOP
AnnaBridge 167:e84263d55307 673 * @arg @ref LL_DBGMCU_APB2_GRP1_TIM11_STOP
AnnaBridge 167:e84263d55307 674 *
AnnaBridge 167:e84263d55307 675 * (*) value not defined in all devices.
AnnaBridge 167:e84263d55307 676 * @retval None
AnnaBridge 167:e84263d55307 677 */
AnnaBridge 167:e84263d55307 678 __STATIC_INLINE void LL_DBGMCU_APB2_GRP1_UnFreezePeriph(uint32_t Periphs)
AnnaBridge 167:e84263d55307 679 {
AnnaBridge 167:e84263d55307 680 CLEAR_BIT(DBGMCU->APB2FZ, Periphs);
AnnaBridge 167:e84263d55307 681 }
AnnaBridge 167:e84263d55307 682 /**
AnnaBridge 167:e84263d55307 683 * @}
AnnaBridge 167:e84263d55307 684 */
AnnaBridge 167:e84263d55307 685
AnnaBridge 167:e84263d55307 686 /** @defgroup SYSTEM_LL_EF_FLASH FLASH
AnnaBridge 167:e84263d55307 687 * @{
AnnaBridge 167:e84263d55307 688 */
AnnaBridge 167:e84263d55307 689
AnnaBridge 167:e84263d55307 690 /**
AnnaBridge 167:e84263d55307 691 * @brief Set FLASH Latency
AnnaBridge 167:e84263d55307 692 * @rmtoll FLASH_ACR LATENCY LL_FLASH_SetLatency
AnnaBridge 167:e84263d55307 693 * @param Latency This parameter can be one of the following values:
AnnaBridge 167:e84263d55307 694 * @arg @ref LL_FLASH_LATENCY_0
AnnaBridge 167:e84263d55307 695 * @arg @ref LL_FLASH_LATENCY_1
AnnaBridge 167:e84263d55307 696 * @arg @ref LL_FLASH_LATENCY_2
AnnaBridge 167:e84263d55307 697 * @arg @ref LL_FLASH_LATENCY_3
AnnaBridge 167:e84263d55307 698 * @arg @ref LL_FLASH_LATENCY_4
AnnaBridge 167:e84263d55307 699 * @arg @ref LL_FLASH_LATENCY_5
AnnaBridge 167:e84263d55307 700 * @arg @ref LL_FLASH_LATENCY_6
AnnaBridge 167:e84263d55307 701 * @arg @ref LL_FLASH_LATENCY_7
AnnaBridge 167:e84263d55307 702 * @retval None
AnnaBridge 167:e84263d55307 703 */
AnnaBridge 167:e84263d55307 704 __STATIC_INLINE void LL_FLASH_SetLatency(uint32_t Latency)
AnnaBridge 167:e84263d55307 705 {
AnnaBridge 167:e84263d55307 706 MODIFY_REG(FLASH->ACR, FLASH_ACR_LATENCY, Latency);
AnnaBridge 167:e84263d55307 707 }
AnnaBridge 167:e84263d55307 708
AnnaBridge 167:e84263d55307 709 /**
AnnaBridge 167:e84263d55307 710 * @brief Get FLASH Latency
AnnaBridge 167:e84263d55307 711 * @rmtoll FLASH_ACR LATENCY LL_FLASH_GetLatency
AnnaBridge 167:e84263d55307 712 * @retval Returned value can be one of the following values:
AnnaBridge 167:e84263d55307 713 * @arg @ref LL_FLASH_LATENCY_0
AnnaBridge 167:e84263d55307 714 * @arg @ref LL_FLASH_LATENCY_1
AnnaBridge 167:e84263d55307 715 * @arg @ref LL_FLASH_LATENCY_2
AnnaBridge 167:e84263d55307 716 * @arg @ref LL_FLASH_LATENCY_3
AnnaBridge 167:e84263d55307 717 * @arg @ref LL_FLASH_LATENCY_4
AnnaBridge 167:e84263d55307 718 * @arg @ref LL_FLASH_LATENCY_5
AnnaBridge 167:e84263d55307 719 * @arg @ref LL_FLASH_LATENCY_6
AnnaBridge 167:e84263d55307 720 * @arg @ref LL_FLASH_LATENCY_7
AnnaBridge 167:e84263d55307 721 */
AnnaBridge 167:e84263d55307 722 __STATIC_INLINE uint32_t LL_FLASH_GetLatency(void)
AnnaBridge 167:e84263d55307 723 {
AnnaBridge 167:e84263d55307 724 return (uint32_t)(READ_BIT(FLASH->ACR, FLASH_ACR_LATENCY));
AnnaBridge 167:e84263d55307 725 }
AnnaBridge 167:e84263d55307 726
AnnaBridge 167:e84263d55307 727 /**
AnnaBridge 167:e84263d55307 728 * @brief Enable Prefetch
AnnaBridge 167:e84263d55307 729 * @rmtoll FLASH_ACR PRFTEN LL_FLASH_EnablePrefetch
AnnaBridge 167:e84263d55307 730 * @retval None
AnnaBridge 167:e84263d55307 731 */
AnnaBridge 167:e84263d55307 732 __STATIC_INLINE void LL_FLASH_EnablePrefetch(void)
AnnaBridge 167:e84263d55307 733 {
AnnaBridge 167:e84263d55307 734 SET_BIT(FLASH->ACR, FLASH_ACR_PRFTEN);
AnnaBridge 167:e84263d55307 735 }
AnnaBridge 167:e84263d55307 736
AnnaBridge 167:e84263d55307 737 /**
AnnaBridge 167:e84263d55307 738 * @brief Disable Prefetch
AnnaBridge 167:e84263d55307 739 * @rmtoll FLASH_ACR PRFTEN LL_FLASH_DisablePrefetch
AnnaBridge 167:e84263d55307 740 * @retval None
AnnaBridge 167:e84263d55307 741 */
AnnaBridge 167:e84263d55307 742 __STATIC_INLINE void LL_FLASH_DisablePrefetch(void)
AnnaBridge 167:e84263d55307 743 {
AnnaBridge 167:e84263d55307 744 CLEAR_BIT(FLASH->ACR, FLASH_ACR_PRFTEN);
AnnaBridge 167:e84263d55307 745 }
AnnaBridge 167:e84263d55307 746
AnnaBridge 167:e84263d55307 747 /**
AnnaBridge 167:e84263d55307 748 * @brief Check if Prefetch buffer is enabled
AnnaBridge 167:e84263d55307 749 * @rmtoll FLASH_ACR PRFTEN LL_FLASH_IsPrefetchEnabled
AnnaBridge 167:e84263d55307 750 * @retval State of bit (1 or 0).
AnnaBridge 167:e84263d55307 751 */
AnnaBridge 167:e84263d55307 752 __STATIC_INLINE uint32_t LL_FLASH_IsPrefetchEnabled(void)
AnnaBridge 167:e84263d55307 753 {
AnnaBridge 167:e84263d55307 754 return (READ_BIT(FLASH->ACR, FLASH_ACR_PRFTEN) == (FLASH_ACR_PRFTEN));
AnnaBridge 167:e84263d55307 755 }
AnnaBridge 167:e84263d55307 756
AnnaBridge 167:e84263d55307 757 /**
AnnaBridge 167:e84263d55307 758 * @brief Enable Instruction cache
AnnaBridge 167:e84263d55307 759 * @rmtoll FLASH_ACR ICEN LL_FLASH_EnableInstCache
AnnaBridge 167:e84263d55307 760 * @retval None
AnnaBridge 167:e84263d55307 761 */
AnnaBridge 167:e84263d55307 762 __STATIC_INLINE void LL_FLASH_EnableInstCache(void)
AnnaBridge 167:e84263d55307 763 {
AnnaBridge 167:e84263d55307 764 SET_BIT(FLASH->ACR, FLASH_ACR_ICEN);
AnnaBridge 167:e84263d55307 765 }
AnnaBridge 167:e84263d55307 766
AnnaBridge 167:e84263d55307 767 /**
AnnaBridge 167:e84263d55307 768 * @brief Disable Instruction cache
AnnaBridge 167:e84263d55307 769 * @rmtoll FLASH_ACR ICEN LL_FLASH_DisableInstCache
AnnaBridge 167:e84263d55307 770 * @retval None
AnnaBridge 167:e84263d55307 771 */
AnnaBridge 167:e84263d55307 772 __STATIC_INLINE void LL_FLASH_DisableInstCache(void)
AnnaBridge 167:e84263d55307 773 {
AnnaBridge 167:e84263d55307 774 CLEAR_BIT(FLASH->ACR, FLASH_ACR_ICEN);
AnnaBridge 167:e84263d55307 775 }
AnnaBridge 167:e84263d55307 776
AnnaBridge 167:e84263d55307 777 /**
AnnaBridge 167:e84263d55307 778 * @brief Enable Data cache
AnnaBridge 167:e84263d55307 779 * @rmtoll FLASH_ACR DCEN LL_FLASH_EnableDataCache
AnnaBridge 167:e84263d55307 780 * @retval None
AnnaBridge 167:e84263d55307 781 */
AnnaBridge 167:e84263d55307 782 __STATIC_INLINE void LL_FLASH_EnableDataCache(void)
AnnaBridge 167:e84263d55307 783 {
AnnaBridge 167:e84263d55307 784 SET_BIT(FLASH->ACR, FLASH_ACR_DCEN);
AnnaBridge 167:e84263d55307 785 }
AnnaBridge 167:e84263d55307 786
AnnaBridge 167:e84263d55307 787 /**
AnnaBridge 167:e84263d55307 788 * @brief Disable Data cache
AnnaBridge 167:e84263d55307 789 * @rmtoll FLASH_ACR DCEN LL_FLASH_DisableDataCache
AnnaBridge 167:e84263d55307 790 * @retval None
AnnaBridge 167:e84263d55307 791 */
AnnaBridge 167:e84263d55307 792 __STATIC_INLINE void LL_FLASH_DisableDataCache(void)
AnnaBridge 167:e84263d55307 793 {
AnnaBridge 167:e84263d55307 794 CLEAR_BIT(FLASH->ACR, FLASH_ACR_DCEN);
AnnaBridge 167:e84263d55307 795 }
AnnaBridge 167:e84263d55307 796
AnnaBridge 167:e84263d55307 797 /**
AnnaBridge 167:e84263d55307 798 * @brief Enable Instruction cache reset
AnnaBridge 167:e84263d55307 799 * @note bit can be written only when the instruction cache is disabled
AnnaBridge 167:e84263d55307 800 * @rmtoll FLASH_ACR ICRST LL_FLASH_EnableInstCacheReset
AnnaBridge 167:e84263d55307 801 * @retval None
AnnaBridge 167:e84263d55307 802 */
AnnaBridge 167:e84263d55307 803 __STATIC_INLINE void LL_FLASH_EnableInstCacheReset(void)
AnnaBridge 167:e84263d55307 804 {
AnnaBridge 167:e84263d55307 805 SET_BIT(FLASH->ACR, FLASH_ACR_ICRST);
AnnaBridge 167:e84263d55307 806 }
AnnaBridge 167:e84263d55307 807
AnnaBridge 167:e84263d55307 808 /**
AnnaBridge 167:e84263d55307 809 * @brief Disable Instruction cache reset
AnnaBridge 167:e84263d55307 810 * @rmtoll FLASH_ACR ICRST LL_FLASH_DisableInstCacheReset
AnnaBridge 167:e84263d55307 811 * @retval None
AnnaBridge 167:e84263d55307 812 */
AnnaBridge 167:e84263d55307 813 __STATIC_INLINE void LL_FLASH_DisableInstCacheReset(void)
AnnaBridge 167:e84263d55307 814 {
AnnaBridge 167:e84263d55307 815 CLEAR_BIT(FLASH->ACR, FLASH_ACR_ICRST);
AnnaBridge 167:e84263d55307 816 }
AnnaBridge 167:e84263d55307 817
AnnaBridge 167:e84263d55307 818 /**
AnnaBridge 167:e84263d55307 819 * @brief Enable Data cache reset
AnnaBridge 167:e84263d55307 820 * @note bit can be written only when the data cache is disabled
AnnaBridge 167:e84263d55307 821 * @rmtoll FLASH_ACR DCRST LL_FLASH_EnableDataCacheReset
AnnaBridge 167:e84263d55307 822 * @retval None
AnnaBridge 167:e84263d55307 823 */
AnnaBridge 167:e84263d55307 824 __STATIC_INLINE void LL_FLASH_EnableDataCacheReset(void)
AnnaBridge 167:e84263d55307 825 {
AnnaBridge 167:e84263d55307 826 SET_BIT(FLASH->ACR, FLASH_ACR_DCRST);
AnnaBridge 167:e84263d55307 827 }
AnnaBridge 167:e84263d55307 828
AnnaBridge 167:e84263d55307 829 /**
AnnaBridge 167:e84263d55307 830 * @brief Disable Data cache reset
AnnaBridge 167:e84263d55307 831 * @rmtoll FLASH_ACR DCRST LL_FLASH_DisableDataCacheReset
AnnaBridge 167:e84263d55307 832 * @retval None
AnnaBridge 167:e84263d55307 833 */
AnnaBridge 167:e84263d55307 834 __STATIC_INLINE void LL_FLASH_DisableDataCacheReset(void)
AnnaBridge 167:e84263d55307 835 {
AnnaBridge 167:e84263d55307 836 CLEAR_BIT(FLASH->ACR, FLASH_ACR_DCRST);
AnnaBridge 167:e84263d55307 837 }
AnnaBridge 167:e84263d55307 838
AnnaBridge 167:e84263d55307 839
AnnaBridge 167:e84263d55307 840 /**
AnnaBridge 167:e84263d55307 841 * @}
AnnaBridge 167:e84263d55307 842 */
AnnaBridge 167:e84263d55307 843
AnnaBridge 167:e84263d55307 844 /**
AnnaBridge 167:e84263d55307 845 * @}
AnnaBridge 167:e84263d55307 846 */
AnnaBridge 167:e84263d55307 847
AnnaBridge 167:e84263d55307 848 /**
AnnaBridge 167:e84263d55307 849 * @}
AnnaBridge 167:e84263d55307 850 */
AnnaBridge 167:e84263d55307 851
AnnaBridge 167:e84263d55307 852 #endif /* defined (FLASH) || defined (SYSCFG) || defined (DBGMCU) */
AnnaBridge 167:e84263d55307 853
AnnaBridge 167:e84263d55307 854 /**
AnnaBridge 167:e84263d55307 855 * @}
AnnaBridge 167:e84263d55307 856 */
AnnaBridge 167:e84263d55307 857
AnnaBridge 167:e84263d55307 858 #ifdef __cplusplus
AnnaBridge 167:e84263d55307 859 }
AnnaBridge 167:e84263d55307 860 #endif
AnnaBridge 167:e84263d55307 861
AnnaBridge 167:e84263d55307 862 #endif /* __STM32F2xx_LL_SYSTEM_H */
AnnaBridge 167:e84263d55307 863
AnnaBridge 167:e84263d55307 864 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/