mbed official / mbed

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

Committer:
AnnaBridge
Date:
Thu May 24 15:35:55 2018 +0100
Revision:
168:b9e159c1930a
Parent:
156:ff21514d8981
mbed library. Release version 162

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 156:ff21514d8981 1 /**
AnnaBridge 156:ff21514d8981 2 ******************************************************************************
AnnaBridge 156:ff21514d8981 3 * @file stm32f3xx_hal.h
AnnaBridge 156:ff21514d8981 4 * @author MCD Application Team
AnnaBridge 156:ff21514d8981 5 * @brief This file contains all the functions prototypes for the HAL
AnnaBridge 156:ff21514d8981 6 * module driver.
AnnaBridge 156:ff21514d8981 7 ******************************************************************************
AnnaBridge 156:ff21514d8981 8 * @attention
AnnaBridge 156:ff21514d8981 9 *
AnnaBridge 156:ff21514d8981 10 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
AnnaBridge 156:ff21514d8981 11 *
AnnaBridge 156:ff21514d8981 12 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 156:ff21514d8981 13 * are permitted provided that the following conditions are met:
AnnaBridge 156:ff21514d8981 14 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 156:ff21514d8981 15 * this list of conditions and the following disclaimer.
AnnaBridge 156:ff21514d8981 16 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 156:ff21514d8981 17 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 156:ff21514d8981 18 * and/or other materials provided with the distribution.
AnnaBridge 156:ff21514d8981 19 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 156:ff21514d8981 20 * may be used to endorse or promote products derived from this software
AnnaBridge 156:ff21514d8981 21 * without specific prior written permission.
AnnaBridge 156:ff21514d8981 22 *
AnnaBridge 156:ff21514d8981 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 156:ff21514d8981 24 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 156:ff21514d8981 25 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 156:ff21514d8981 26 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 156:ff21514d8981 27 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 156:ff21514d8981 28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 156:ff21514d8981 29 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 156:ff21514d8981 30 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 156:ff21514d8981 31 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 156:ff21514d8981 32 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 156:ff21514d8981 33 *
AnnaBridge 156:ff21514d8981 34 ******************************************************************************
AnnaBridge 156:ff21514d8981 35 */
AnnaBridge 156:ff21514d8981 36
AnnaBridge 156:ff21514d8981 37 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 156:ff21514d8981 38 #ifndef __STM32F3xx_HAL_H
AnnaBridge 156:ff21514d8981 39 #define __STM32F3xx_HAL_H
AnnaBridge 156:ff21514d8981 40
AnnaBridge 156:ff21514d8981 41 #ifdef __cplusplus
AnnaBridge 156:ff21514d8981 42 extern "C" {
AnnaBridge 156:ff21514d8981 43 #endif
AnnaBridge 156:ff21514d8981 44
AnnaBridge 156:ff21514d8981 45 /* Includes ------------------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 46 #include "stm32f3xx_hal_conf.h"
AnnaBridge 156:ff21514d8981 47
AnnaBridge 156:ff21514d8981 48 /** @addtogroup STM32F3xx_HAL_Driver
AnnaBridge 156:ff21514d8981 49 * @{
AnnaBridge 156:ff21514d8981 50 */
AnnaBridge 156:ff21514d8981 51
AnnaBridge 156:ff21514d8981 52 /** @addtogroup HAL
AnnaBridge 156:ff21514d8981 53 * @{
AnnaBridge 156:ff21514d8981 54 */
AnnaBridge 156:ff21514d8981 55
AnnaBridge 156:ff21514d8981 56 /* Private macros ------------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 57 /** @addtogroup HAL_Private_Macros
AnnaBridge 156:ff21514d8981 58 * @{
AnnaBridge 156:ff21514d8981 59 */
AnnaBridge 156:ff21514d8981 60 #define IS_SYSCFG_FASTMODEPLUS(__PIN__) ((((__PIN__) & SYSCFG_FASTMODEPLUS_PB6) == SYSCFG_FASTMODEPLUS_PB6) || \
AnnaBridge 156:ff21514d8981 61 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB7) == SYSCFG_FASTMODEPLUS_PB7) || \
AnnaBridge 156:ff21514d8981 62 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB8) == SYSCFG_FASTMODEPLUS_PB8) || \
AnnaBridge 156:ff21514d8981 63 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB9) == SYSCFG_FASTMODEPLUS_PB9))
AnnaBridge 156:ff21514d8981 64 /**
AnnaBridge 156:ff21514d8981 65 * @}
AnnaBridge 156:ff21514d8981 66 */
AnnaBridge 156:ff21514d8981 67
AnnaBridge 156:ff21514d8981 68 /* Exported types ------------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 69 /* Exported constants --------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 70 /** @defgroup HAL_Exported_Constants HAL Exported Constants
AnnaBridge 156:ff21514d8981 71 * @{
AnnaBridge 156:ff21514d8981 72 */
AnnaBridge 156:ff21514d8981 73 /** @defgroup SYSCFG_BitAddress_AliasRegion SYSCFG registers bit address in the alias region
AnnaBridge 156:ff21514d8981 74 * @brief SYSCFG registers bit address in the alias region
AnnaBridge 156:ff21514d8981 75 * @{
AnnaBridge 156:ff21514d8981 76 */
AnnaBridge 156:ff21514d8981 77 /* ------------ SYSCFG registers bit address in the alias region -------------*/
AnnaBridge 156:ff21514d8981 78 #define SYSCFG_OFFSET (SYSCFG_BASE - PERIPH_BASE)
AnnaBridge 156:ff21514d8981 79 /* --- CFGR2 Register ---*/
AnnaBridge 156:ff21514d8981 80 /* Alias word address of BYP_ADDR_PAR bit */
AnnaBridge 156:ff21514d8981 81 #define CFGR2_OFFSET (SYSCFG_OFFSET + 0x18U)
AnnaBridge 168:b9e159c1930a 82 #define BYPADDRPAR_BitNumber 0x04U
AnnaBridge 156:ff21514d8981 83 #define CFGR2_BYPADDRPAR_BB (PERIPH_BB_BASE + (CFGR2_OFFSET * 32U) + (BYPADDRPAR_BitNumber * 4U))
AnnaBridge 156:ff21514d8981 84 /**
AnnaBridge 156:ff21514d8981 85 * @}
AnnaBridge 156:ff21514d8981 86 */
AnnaBridge 156:ff21514d8981 87
AnnaBridge 156:ff21514d8981 88 #if defined(SYSCFG_CFGR1_DMA_RMP)
AnnaBridge 156:ff21514d8981 89 /** @defgroup HAL_DMA_Remapping HAL DMA Remapping
AnnaBridge 156:ff21514d8981 90 * Elements values convention: 0xXXYYYYYY
AnnaBridge 156:ff21514d8981 91 * - YYYYYY : Position in the register
AnnaBridge 156:ff21514d8981 92 * - XX : Register index
AnnaBridge 156:ff21514d8981 93 * - 00: CFGR1 register in SYSCFG
AnnaBridge 156:ff21514d8981 94 * - 01: CFGR3 register in SYSCFG (not available on STM32F373xC/STM32F378xx devices)
AnnaBridge 156:ff21514d8981 95 * @{
AnnaBridge 156:ff21514d8981 96 */
AnnaBridge 156:ff21514d8981 97 #define HAL_REMAPDMA_ADC24_DMA2_CH34 (0x00000100U) /*!< ADC24 DMA remap (STM32F303xB/C/E, STM32F358xx and STM32F398xx devices)
AnnaBridge 168:b9e159c1930a 98 1: Remap (ADC24 DMA requests mapped on DMA2 channels 3 and 4) */
AnnaBridge 156:ff21514d8981 99 #define HAL_REMAPDMA_TIM16_DMA1_CH6 (0x00000800U) /*!< TIM16 DMA request remap
AnnaBridge 168:b9e159c1930a 100 1: Remap (TIM16_CH1 and TIM16_UP DMA requests mapped on DMA1 channel 6) */
AnnaBridge 156:ff21514d8981 101 #define HAL_REMAPDMA_TIM17_DMA1_CH7 (0x00001000U) /*!< TIM17 DMA request remap
AnnaBridge 168:b9e159c1930a 102 1: Remap (TIM17_CH1 and TIM17_UP DMA requests mapped on DMA1 channel 7) */
AnnaBridge 156:ff21514d8981 103 #define HAL_REMAPDMA_TIM6_DAC1_CH1_DMA1_CH3 (0x00002000U) /*!< TIM6 and DAC channel1 DMA remap (STM32F303xB/C/E, STM32F358xx and STM32F398xx devices)
AnnaBridge 168:b9e159c1930a 104 1: Remap (TIM6_UP and DAC_CH1 DMA requests mapped on DMA1 channel 3) */
AnnaBridge 156:ff21514d8981 105 #define HAL_REMAPDMA_TIM7_DAC1_CH2_DMA1_CH4 (0x00004000U) /*!< TIM7 and DAC channel2 DMA remap (STM32F303xB/C/E, STM32F358xx and STM32F398xx devices)
AnnaBridge 168:b9e159c1930a 106 1: Remap (TIM7_UP and DAC_CH2 DMA requests mapped on DMA1 channel 4) */
AnnaBridge 168:b9e159c1930a 107 #define HAL_REMAPDMA_DAC2_CH1_DMA1_CH5 (0x00008000U) /*!< DAC2 channel1 DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 108 1: Remap (DAC2_CH1 DMA requests mapped on DMA1 channel 5) */
AnnaBridge 168:b9e159c1930a 109 #define HAL_REMAPDMA_TIM18_DAC2_CH1_DMA1_CH5 (0x00008000U) /*!< DAC2 channel1 DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 110 1: Remap (DAC2_CH1 DMA requests mapped on DMA1 channel 5) */
AnnaBridge 156:ff21514d8981 111 #if defined(SYSCFG_CFGR3_DMA_RMP)
AnnaBridge 156:ff21514d8981 112 #if !defined(HAL_REMAP_CFGR3_MASK)
AnnaBridge 156:ff21514d8981 113 #define HAL_REMAP_CFGR3_MASK (0x01000000U)
AnnaBridge 156:ff21514d8981 114 #endif
AnnaBridge 156:ff21514d8981 115
AnnaBridge 168:b9e159c1930a 116 #define HAL_REMAPDMA_SPI1_RX_DMA1_CH2 (0x01000003U) /*!< SPI1_RX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 117 11: Map on DMA1 channel 2 */
AnnaBridge 168:b9e159c1930a 118 #define HAL_REMAPDMA_SPI1_RX_DMA1_CH4 (0x01000001U) /*!< SPI1_RX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 119 01: Map on DMA1 channel 4 */
AnnaBridge 168:b9e159c1930a 120 #define HAL_REMAPDMA_SPI1_RX_DMA1_CH6 (0x01000002U) /*!< SPI1_RX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 121 10: Map on DMA1 channel 6 */
AnnaBridge 168:b9e159c1930a 122 #define HAL_REMAPDMA_SPI1_TX_DMA1_CH3 (0x0100000CU) /*!< SPI1_TX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 123 11: Map on DMA1 channel 3 */
AnnaBridge 168:b9e159c1930a 124 #define HAL_REMAPDMA_SPI1_TX_DMA1_CH5 (0x01000004U) /*!< SPI1_TX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 125 01: Map on DMA1 channel 5 */
AnnaBridge 168:b9e159c1930a 126 #define HAL_REMAPDMA_SPI1_TX_DMA1_CH7 (0x01000008U) /*!< SPI1_TX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 127 10: Map on DMA1 channel 7 */
AnnaBridge 168:b9e159c1930a 128 #define HAL_REMAPDMA_I2C1_RX_DMA1_CH7 (0x01000030U) /*!< I2C1_RX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 129 11: Map on DMA1 channel 7 */
AnnaBridge 168:b9e159c1930a 130 #define HAL_REMAPDMA_I2C1_RX_DMA1_CH3 (0x01000010U) /*!< I2C1_RX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 131 01: Map on DMA1 channel 3 */
AnnaBridge 168:b9e159c1930a 132 #define HAL_REMAPDMA_I2C1_RX_DMA1_CH5 (0x01000020U) /*!< I2C1_RX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 133 10: Map on DMA1 channel 5 */
AnnaBridge 168:b9e159c1930a 134 #define HAL_REMAPDMA_I2C1_TX_DMA1_CH6 (0x010000C0U) /*!< I2C1_TX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 135 11: Map on DMA1 channel 6 */
AnnaBridge 168:b9e159c1930a 136 #define HAL_REMAPDMA_I2C1_TX_DMA1_CH2 (0x01000040U) /*!< I2C1_TX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 137 01: Map on DMA1 channel 2 */
AnnaBridge 168:b9e159c1930a 138 #define HAL_REMAPDMA_I2C1_TX_DMA1_CH4 (0x01000080U) /*!< I2C1_TX DMA remap (STM32F303x4/6/8 devices only)
AnnaBridge 168:b9e159c1930a 139 10: Map on DMA1 channel 4 */
AnnaBridge 156:ff21514d8981 140 #define HAL_REMAPDMA_ADC2_DMA1_CH2 (0x01000100U) /*!< ADC2 DMA remap
AnnaBridge 156:ff21514d8981 141 x0: No remap (ADC2 on DMA2)
AnnaBridge 168:b9e159c1930a 142 10: Map on DMA1 channel 2 */
AnnaBridge 156:ff21514d8981 143 #define HAL_REMAPDMA_ADC2_DMA1_CH4 (0x01000300U) /*!< ADC2 DMA remap
AnnaBridge 168:b9e159c1930a 144 11: Map on DMA1 channel 4 */
AnnaBridge 156:ff21514d8981 145 #endif /* SYSCFG_CFGR3_DMA_RMP */
AnnaBridge 156:ff21514d8981 146
AnnaBridge 156:ff21514d8981 147 #if defined(SYSCFG_CFGR3_DMA_RMP)
AnnaBridge 156:ff21514d8981 148 #define IS_DMA_REMAP(RMP) ((((RMP) & HAL_REMAPDMA_ADC24_DMA2_CH34) == HAL_REMAPDMA_ADC24_DMA2_CH34) || \
AnnaBridge 156:ff21514d8981 149 (((RMP) & HAL_REMAPDMA_TIM16_DMA1_CH6) == HAL_REMAPDMA_TIM16_DMA1_CH6) || \
AnnaBridge 156:ff21514d8981 150 (((RMP) & HAL_REMAPDMA_TIM17_DMA1_CH7) == HAL_REMAPDMA_TIM17_DMA1_CH7) || \
AnnaBridge 156:ff21514d8981 151 (((RMP) & HAL_REMAPDMA_TIM6_DAC1_CH1_DMA1_CH3) == HAL_REMAPDMA_TIM6_DAC1_CH1_DMA1_CH3) || \
AnnaBridge 156:ff21514d8981 152 (((RMP) & HAL_REMAPDMA_TIM7_DAC1_CH2_DMA1_CH4) == HAL_REMAPDMA_TIM7_DAC1_CH2_DMA1_CH4) || \
AnnaBridge 156:ff21514d8981 153 (((RMP) & HAL_REMAPDMA_DAC2_CH1_DMA1_CH5) == HAL_REMAPDMA_DAC2_CH1_DMA1_CH5) || \
AnnaBridge 156:ff21514d8981 154 (((RMP) & HAL_REMAPDMA_TIM18_DAC2_CH1_DMA1_CH5) == HAL_REMAPDMA_TIM18_DAC2_CH1_DMA1_CH5) || \
AnnaBridge 156:ff21514d8981 155 (((RMP) & HAL_REMAPDMA_SPI1_RX_DMA1_CH2) == HAL_REMAPDMA_SPI1_RX_DMA1_CH2) || \
AnnaBridge 156:ff21514d8981 156 (((RMP) & HAL_REMAPDMA_SPI1_RX_DMA1_CH4) == HAL_REMAPDMA_SPI1_RX_DMA1_CH4) || \
AnnaBridge 156:ff21514d8981 157 (((RMP) & HAL_REMAPDMA_SPI1_RX_DMA1_CH6) == HAL_REMAPDMA_SPI1_RX_DMA1_CH6) || \
AnnaBridge 156:ff21514d8981 158 (((RMP) & HAL_REMAPDMA_SPI1_TX_DMA1_CH3) == HAL_REMAPDMA_SPI1_TX_DMA1_CH3) || \
AnnaBridge 156:ff21514d8981 159 (((RMP) & HAL_REMAPDMA_SPI1_TX_DMA1_CH5) == HAL_REMAPDMA_SPI1_TX_DMA1_CH5) || \
AnnaBridge 156:ff21514d8981 160 (((RMP) & HAL_REMAPDMA_SPI1_TX_DMA1_CH7) == HAL_REMAPDMA_SPI1_TX_DMA1_CH7) || \
AnnaBridge 156:ff21514d8981 161 (((RMP) & HAL_REMAPDMA_I2C1_RX_DMA1_CH7) == HAL_REMAPDMA_I2C1_RX_DMA1_CH7) || \
AnnaBridge 156:ff21514d8981 162 (((RMP) & HAL_REMAPDMA_I2C1_RX_DMA1_CH3) == HAL_REMAPDMA_I2C1_RX_DMA1_CH3) || \
AnnaBridge 156:ff21514d8981 163 (((RMP) & HAL_REMAPDMA_I2C1_RX_DMA1_CH5) == HAL_REMAPDMA_I2C1_RX_DMA1_CH5) || \
AnnaBridge 156:ff21514d8981 164 (((RMP) & HAL_REMAPDMA_I2C1_TX_DMA1_CH6) == HAL_REMAPDMA_I2C1_TX_DMA1_CH6) || \
AnnaBridge 156:ff21514d8981 165 (((RMP) & HAL_REMAPDMA_I2C1_TX_DMA1_CH2) == HAL_REMAPDMA_I2C1_TX_DMA1_CH2) || \
AnnaBridge 156:ff21514d8981 166 (((RMP) & HAL_REMAPDMA_I2C1_TX_DMA1_CH4) == HAL_REMAPDMA_I2C1_TX_DMA1_CH4) || \
AnnaBridge 156:ff21514d8981 167 (((RMP) & HAL_REMAPDMA_ADC2_DMA1_CH2) == HAL_REMAPDMA_ADC2_DMA1_CH2) || \
AnnaBridge 156:ff21514d8981 168 (((RMP) & HAL_REMAPDMA_ADC2_DMA1_CH4) == HAL_REMAPDMA_ADC2_DMA1_CH4))
AnnaBridge 156:ff21514d8981 169 #else
AnnaBridge 156:ff21514d8981 170 #define IS_DMA_REMAP(RMP) ((((RMP) & HAL_REMAPDMA_ADC24_DMA2_CH34) == HAL_REMAPDMA_ADC24_DMA2_CH34) || \
AnnaBridge 156:ff21514d8981 171 (((RMP) & HAL_REMAPDMA_TIM16_DMA1_CH6) == HAL_REMAPDMA_TIM16_DMA1_CH6) || \
AnnaBridge 156:ff21514d8981 172 (((RMP) & HAL_REMAPDMA_TIM17_DMA1_CH7) == HAL_REMAPDMA_TIM17_DMA1_CH7) || \
AnnaBridge 156:ff21514d8981 173 (((RMP) & HAL_REMAPDMA_TIM6_DAC1_CH1_DMA1_CH3) == HAL_REMAPDMA_TIM6_DAC1_CH1_DMA1_CH3) || \
AnnaBridge 156:ff21514d8981 174 (((RMP) & HAL_REMAPDMA_TIM7_DAC1_CH2_DMA1_CH4) == HAL_REMAPDMA_TIM7_DAC1_CH2_DMA1_CH4) || \
AnnaBridge 156:ff21514d8981 175 (((RMP) & HAL_REMAPDMA_DAC2_CH1_DMA1_CH5) == HAL_REMAPDMA_DAC2_CH1_DMA1_CH5) || \
AnnaBridge 156:ff21514d8981 176 (((RMP) & HAL_REMAPDMA_TIM18_DAC2_CH1_DMA1_CH5) == HAL_REMAPDMA_TIM18_DAC2_CH1_DMA1_CH5))
AnnaBridge 156:ff21514d8981 177 #endif /* SYSCFG_CFGR3_DMA_RMP && SYSCFG_CFGR1_DMA_RMP*/
AnnaBridge 156:ff21514d8981 178 /**
AnnaBridge 156:ff21514d8981 179 * @}
AnnaBridge 156:ff21514d8981 180 */
AnnaBridge 156:ff21514d8981 181 #endif /* SYSCFG_CFGR1_DMA_RMP */
AnnaBridge 156:ff21514d8981 182
AnnaBridge 156:ff21514d8981 183 /** @defgroup HAL_Trigger_Remapping HAL Trigger Remapping
AnnaBridge 156:ff21514d8981 184 * Elements values convention: 0xXXYYYYYY
AnnaBridge 156:ff21514d8981 185 * - YYYYYY : Position in the register
AnnaBridge 156:ff21514d8981 186 * - XX : Register index
AnnaBridge 156:ff21514d8981 187 * - 00: CFGR1 register in SYSCFG
AnnaBridge 156:ff21514d8981 188 * - 01: CFGR3 register in SYSCFG
AnnaBridge 156:ff21514d8981 189 * @{
AnnaBridge 156:ff21514d8981 190 */
AnnaBridge 156:ff21514d8981 191 #define HAL_REMAPTRIGGER_DAC1_TRIG (0x00000080U) /*!< DAC trigger remap (when TSEL = 001 on STM32F303xB/C and STM32F358xx devices)
AnnaBridge 156:ff21514d8981 192 0: No remap (DAC trigger is TIM8_TRGO)
AnnaBridge 156:ff21514d8981 193 1: Remap (DAC trigger is TIM3_TRGO) */
AnnaBridge 156:ff21514d8981 194 #define HAL_REMAPTRIGGER_TIM1_ITR3 (0x00000040U) /*!< TIM1 ITR3 trigger remap
AnnaBridge 156:ff21514d8981 195 0: No remap
AnnaBridge 156:ff21514d8981 196 1: Remap (TIM1_TRG3 = TIM17_OC) */
AnnaBridge 156:ff21514d8981 197 #if defined(SYSCFG_CFGR3_TRIGGER_RMP)
AnnaBridge 156:ff21514d8981 198 #if !defined(HAL_REMAP_CFGR3_MASK)
AnnaBridge 156:ff21514d8981 199 #define HAL_REMAP_CFGR3_MASK (0x01000000U)
AnnaBridge 156:ff21514d8981 200 #endif
AnnaBridge 156:ff21514d8981 201 #define HAL_REMAPTRIGGER_DAC1_TRIG3 (0x01010000U) /*!< DAC1_CH1 / DAC1_CH2 Trigger remap
AnnaBridge 156:ff21514d8981 202 0: Remap (DAC trigger is TIM15_TRGO)
AnnaBridge 156:ff21514d8981 203 1: Remap (DAC trigger is HRTIM1_DAC1_TRIG1) */
AnnaBridge 156:ff21514d8981 204 #define HAL_REMAPTRIGGER_DAC1_TRIG5 (0x01020000U) /*!< DAC1_CH1 / DAC1_CH2 Trigger remap
AnnaBridge 156:ff21514d8981 205 0: No remap
AnnaBridge 156:ff21514d8981 206 1: Remap (DAC trigger is HRTIM1_DAC1_TRIG2) */
AnnaBridge 156:ff21514d8981 207 #define IS_HAL_REMAPTRIGGER(RMP) ((((RMP) & HAL_REMAPTRIGGER_DAC1) == HAL_REMAPTRIGGER_DAC1) || \
AnnaBridge 156:ff21514d8981 208 (((RMP) & HAL_REMAPTRIGGER_TIM1_ITR3) == HAL_REMAPTRIGGER_TIM1_ITR3) || \
AnnaBridge 156:ff21514d8981 209 (((RMP) & HAL_REMAPTRIGGER_DAC1_TRIG3) == HAL_REMAPTRIGGER_DAC1_TRIG3) || \
AnnaBridge 156:ff21514d8981 210 (((RMP) & HAL_REMAPTRIGGER_DAC1_TRIG5) == HAL_REMAPTRIGGER_DAC1_TRIG5))
AnnaBridge 156:ff21514d8981 211 #else
AnnaBridge 156:ff21514d8981 212 #define IS_HAL_REMAPTRIGGER(RMP) ((((RMP) & HAL_REMAPTRIGGER_DAC1) == HAL_REMAPTRIGGER_DAC1) || \
AnnaBridge 156:ff21514d8981 213 (((RMP) & HAL_REMAPTRIGGER_TIM1_ITR3) == HAL_REMAPTRIGGER_TIM1_ITR3))
AnnaBridge 156:ff21514d8981 214 #endif /* SYSCFG_CFGR3_TRIGGER_RMP */
AnnaBridge 156:ff21514d8981 215 /**
AnnaBridge 156:ff21514d8981 216 * @}
AnnaBridge 156:ff21514d8981 217 */
AnnaBridge 156:ff21514d8981 218
AnnaBridge 156:ff21514d8981 219 #if defined (STM32F302xE)
AnnaBridge 156:ff21514d8981 220 /** @defgroup HAL_ADC_Trigger_Remapping HAL ADC Trigger Remapping
AnnaBridge 156:ff21514d8981 221 * @{
AnnaBridge 156:ff21514d8981 222 */
AnnaBridge 156:ff21514d8981 223 #define HAL_REMAPADCTRIGGER_ADC12_EXT2 SYSCFG_CFGR4_ADC12_EXT2_RMP /*!< Input trigger of ADC12 regular channel EXT2
AnnaBridge 156:ff21514d8981 224 0: No remap (TIM1_CC3)
AnnaBridge 156:ff21514d8981 225 1: Remap (TIM20_TRGO) */
AnnaBridge 156:ff21514d8981 226 #define HAL_REMAPADCTRIGGER_ADC12_EXT3 SYSCFG_CFGR4_ADC12_EXT3_RMP /*!< Input trigger of ADC12 regular channel EXT3
AnnaBridge 156:ff21514d8981 227 0: No remap (TIM2_CC2)
AnnaBridge 156:ff21514d8981 228 1: Remap (TIM20_TRGO2) */
AnnaBridge 156:ff21514d8981 229 #define HAL_REMAPADCTRIGGER_ADC12_EXT5 SYSCFG_CFGR4_ADC12_EXT5_RMP /*!< Input trigger of ADC12 regular channel EXT5
AnnaBridge 156:ff21514d8981 230 0: No remap (TIM4_CC4)
AnnaBridge 156:ff21514d8981 231 1: Remap (TIM20_CC1) */
AnnaBridge 156:ff21514d8981 232 #define HAL_REMAPADCTRIGGER_ADC12_EXT13 SYSCFG_CFGR4_ADC12_EXT13_RMP /*!< Input trigger of ADC12 regular channel EXT13
AnnaBridge 156:ff21514d8981 233 0: No remap (TIM6_TRGO)
AnnaBridge 156:ff21514d8981 234 1: Remap (TIM20_CC2) */
AnnaBridge 156:ff21514d8981 235 #define HAL_REMAPADCTRIGGER_ADC12_EXT15 SYSCFG_CFGR4_ADC12_EXT15_RMP /*!< Input trigger of ADC12 regular channel EXT15
AnnaBridge 156:ff21514d8981 236 0: No remap (TIM3_CC4)
AnnaBridge 156:ff21514d8981 237 1: Remap (TIM20_CC3) */
AnnaBridge 156:ff21514d8981 238 #define HAL_REMAPADCTRIGGER_ADC12_JEXT3 SYSCFG_CFGR4_ADC12_JEXT3_RMP /*!< Input trigger of ADC12 injected channel JEXT3
AnnaBridge 156:ff21514d8981 239 0: No remap (TIM2_CC1)
AnnaBridge 156:ff21514d8981 240 1: Remap (TIM20_TRGO) */
AnnaBridge 156:ff21514d8981 241 #define HAL_REMAPADCTRIGGER_ADC12_JEXT6 SYSCFG_CFGR4_ADC12_JEXT6_RMP /*!< Input trigger of ADC12 injected channel JEXT6
AnnaBridge 168:b9e159c1930a 242 0: No remap (EXTI line 15)
AnnaBridge 156:ff21514d8981 243 1: Remap (TIM20_TRGO2) */
AnnaBridge 156:ff21514d8981 244 #define HAL_REMAPADCTRIGGER_ADC12_JEXT13 SYSCFG_CFGR4_ADC12_JEXT13_RMP /*!< Input trigger of ADC12 injected channel JEXT13
AnnaBridge 156:ff21514d8981 245 0: No remap (TIM3_CC1)
AnnaBridge 156:ff21514d8981 246 1: Remap (TIM20_CC4) */
AnnaBridge 156:ff21514d8981 247
AnnaBridge 156:ff21514d8981 248 #define IS_HAL_REMAPADCTRIGGER(RMP) ((((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT2) == HAL_REMAPADCTRIGGER_ADC12_EXT2) || \
AnnaBridge 156:ff21514d8981 249 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT3) == HAL_REMAPADCTRIGGER_ADC12_EXT3) || \
AnnaBridge 156:ff21514d8981 250 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT5) == HAL_REMAPADCTRIGGER_ADC12_EXT5) || \
AnnaBridge 168:b9e159c1930a 251 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT13) == HAL_REMAPADCTRIGGER_ADC12_EXT13) || \
AnnaBridge 168:b9e159c1930a 252 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT15) == HAL_REMAPADCTRIGGER_ADC12_EXT15) || \
AnnaBridge 156:ff21514d8981 253 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_JEXT3) == HAL_REMAPADCTRIGGER_ADC12_JEXT3) || \
AnnaBridge 156:ff21514d8981 254 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_JEXT6) == HAL_REMAPADCTRIGGER_ADC12_JEXT6) || \
AnnaBridge 168:b9e159c1930a 255 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_JEXT13) == HAL_REMAPADCTRIGGER_ADC12_JEXT13))
AnnaBridge 156:ff21514d8981 256 /**
AnnaBridge 156:ff21514d8981 257 * @}
AnnaBridge 156:ff21514d8981 258 */
AnnaBridge 156:ff21514d8981 259 #endif /* STM32F302xE */
AnnaBridge 156:ff21514d8981 260
AnnaBridge 156:ff21514d8981 261 #if defined (STM32F303xE) || defined (STM32F398xx)
AnnaBridge 156:ff21514d8981 262 /** @defgroup HAL_ADC_Trigger_Remapping HAL ADC Trigger Remapping
AnnaBridge 156:ff21514d8981 263 * @{
AnnaBridge 156:ff21514d8981 264 */
AnnaBridge 156:ff21514d8981 265 #define HAL_REMAPADCTRIGGER_ADC12_EXT2 SYSCFG_CFGR4_ADC12_EXT2_RMP /*!< Input trigger of ADC12 regular channel EXT2
AnnaBridge 156:ff21514d8981 266 0: No remap (TIM1_CC3)
AnnaBridge 156:ff21514d8981 267 1: Remap (TIM20_TRGO) */
AnnaBridge 156:ff21514d8981 268 #define HAL_REMAPADCTRIGGER_ADC12_EXT3 SYSCFG_CFGR4_ADC12_EXT3_RMP /*!< Input trigger of ADC12 regular channel EXT3
AnnaBridge 156:ff21514d8981 269 0: No remap (TIM2_CC2)
AnnaBridge 156:ff21514d8981 270 1: Remap (TIM20_TRGO2) */
AnnaBridge 156:ff21514d8981 271 #define HAL_REMAPADCTRIGGER_ADC12_EXT5 SYSCFG_CFGR4_ADC12_EXT5_RMP /*!< Input trigger of ADC12 regular channel EXT5
AnnaBridge 156:ff21514d8981 272 0: No remap (TIM4_CC4)
AnnaBridge 156:ff21514d8981 273 1: Remap (TIM20_CC1) */
AnnaBridge 156:ff21514d8981 274 #define HAL_REMAPADCTRIGGER_ADC12_EXT13 SYSCFG_CFGR4_ADC12_EXT13_RMP /*!< Input trigger of ADC12 regular channel EXT13
AnnaBridge 156:ff21514d8981 275 0: No remap (TIM6_TRGO)
AnnaBridge 156:ff21514d8981 276 1: Remap (TIM20_CC2) */
AnnaBridge 156:ff21514d8981 277 #define HAL_REMAPADCTRIGGER_ADC12_EXT15 SYSCFG_CFGR4_ADC12_EXT15_RMP /*!< Input trigger of ADC12 regular channel EXT15
AnnaBridge 156:ff21514d8981 278 0: No remap (TIM3_CC4)
AnnaBridge 156:ff21514d8981 279 1: Remap (TIM20_CC3) */
AnnaBridge 156:ff21514d8981 280 #define HAL_REMAPADCTRIGGER_ADC12_JEXT3 SYSCFG_CFGR4_ADC12_JEXT3_RMP /*!< Input trigger of ADC12 injected channel JEXT3
AnnaBridge 156:ff21514d8981 281 0: No remap (TIM2_CC1)
AnnaBridge 156:ff21514d8981 282 1: Remap (TIM20_TRGO) */
AnnaBridge 156:ff21514d8981 283 #define HAL_REMAPADCTRIGGER_ADC12_JEXT6 SYSCFG_CFGR4_ADC12_JEXT6_RMP /*!< Input trigger of ADC12 injected channel JEXT6
AnnaBridge 168:b9e159c1930a 284 0: No remap (EXTI line 15)
AnnaBridge 156:ff21514d8981 285 1: Remap (TIM20_TRGO2) */
AnnaBridge 156:ff21514d8981 286 #define HAL_REMAPADCTRIGGER_ADC12_JEXT13 SYSCFG_CFGR4_ADC12_JEXT13_RMP /*!< Input trigger of ADC12 injected channel JEXT13
AnnaBridge 156:ff21514d8981 287 0: No remap (TIM3_CC1)
AnnaBridge 156:ff21514d8981 288 1: Remap (TIM20_CC4) */
AnnaBridge 156:ff21514d8981 289 #define HAL_REMAPADCTRIGGER_ADC34_EXT5 SYSCFG_CFGR4_ADC34_EXT5_RMP /*!< Input trigger of ADC34 regular channel EXT5
AnnaBridge 168:b9e159c1930a 290 0: No remap (EXTI line 2)
AnnaBridge 156:ff21514d8981 291 1: Remap (TIM20_TRGO) */
AnnaBridge 156:ff21514d8981 292 #define HAL_REMAPADCTRIGGER_ADC34_EXT6 SYSCFG_CFGR4_ADC34_EXT6_RMP /*!< Input trigger of ADC34 regular channel EXT6
AnnaBridge 156:ff21514d8981 293 0: No remap (TIM4_CC1)
AnnaBridge 156:ff21514d8981 294 1: Remap (TIM20_TRGO2) */
AnnaBridge 156:ff21514d8981 295 #define HAL_REMAPADCTRIGGER_ADC34_EXT15 SYSCFG_CFGR4_ADC34_EXT15_RMP /*!< Input trigger of ADC34 regular channel EXT15
AnnaBridge 156:ff21514d8981 296 0: No remap (TIM2_CC1)
AnnaBridge 156:ff21514d8981 297 1: Remap (TIM20_CC1) */
AnnaBridge 156:ff21514d8981 298 #define HAL_REMAPADCTRIGGER_ADC34_JEXT5 SYSCFG_CFGR4_ADC34_JEXT5_RMP /*!< Input trigger of ADC34 injected channel JEXT5
AnnaBridge 156:ff21514d8981 299 0: No remap (TIM4_CC3)
AnnaBridge 156:ff21514d8981 300 1: Remap (TIM20_TRGO) */
AnnaBridge 156:ff21514d8981 301 #define HAL_REMAPADCTRIGGER_ADC34_JEXT11 SYSCFG_CFGR4_ADC34_JEXT11_RMP /*!< Input trigger of ADC34 injected channel JEXT11
AnnaBridge 156:ff21514d8981 302 0: No remap (TIM1_CC3)
AnnaBridge 156:ff21514d8981 303 1: Remap (TIM20_TRGO2) */
AnnaBridge 156:ff21514d8981 304 #define HAL_REMAPADCTRIGGER_ADC34_JEXT14 SYSCFG_CFGR4_ADC34_JEXT14_RMP /*!< Input trigger of ADC34 injected channel JEXT14
AnnaBridge 156:ff21514d8981 305 0: No remap (TIM7_TRGO)
AnnaBridge 156:ff21514d8981 306 1: Remap (TIM20_CC2) */
AnnaBridge 156:ff21514d8981 307
AnnaBridge 156:ff21514d8981 308 #define IS_HAL_REMAPADCTRIGGER(RMP) ((((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT2) == HAL_REMAPADCTRIGGER_ADC12_EXT2) || \
AnnaBridge 156:ff21514d8981 309 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT3) == HAL_REMAPADCTRIGGER_ADC12_EXT3) || \
AnnaBridge 156:ff21514d8981 310 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT5) == HAL_REMAPADCTRIGGER_ADC12_EXT5) || \
AnnaBridge 168:b9e159c1930a 311 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT13) == HAL_REMAPADCTRIGGER_ADC12_EXT13) || \
AnnaBridge 168:b9e159c1930a 312 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_EXT15) == HAL_REMAPADCTRIGGER_ADC12_EXT15) || \
AnnaBridge 156:ff21514d8981 313 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_JEXT3) == HAL_REMAPADCTRIGGER_ADC12_JEXT3) || \
AnnaBridge 156:ff21514d8981 314 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_JEXT6) == HAL_REMAPADCTRIGGER_ADC12_JEXT6) || \
AnnaBridge 168:b9e159c1930a 315 (((RMP) & HAL_REMAPADCTRIGGER_ADC12_JEXT13) == HAL_REMAPADCTRIGGER_ADC12_JEXT13) || \
AnnaBridge 156:ff21514d8981 316 (((RMP) & HAL_REMAPADCTRIGGER_ADC34_EXT5) == HAL_REMAPADCTRIGGER_ADC34_EXT5) || \
AnnaBridge 156:ff21514d8981 317 (((RMP) & HAL_REMAPADCTRIGGER_ADC34_EXT6) == HAL_REMAPADCTRIGGER_ADC34_EXT6) || \
AnnaBridge 168:b9e159c1930a 318 (((RMP) & HAL_REMAPADCTRIGGER_ADC34_EXT15) == HAL_REMAPADCTRIGGER_ADC34_EXT15) || \
AnnaBridge 156:ff21514d8981 319 (((RMP) & HAL_REMAPADCTRIGGER_ADC34_JEXT5) == HAL_REMAPADCTRIGGER_ADC34_JEXT5) || \
AnnaBridge 168:b9e159c1930a 320 (((RMP) & HAL_REMAPADCTRIGGER_ADC34_JEXT11) == HAL_REMAPADCTRIGGER_ADC34_JEXT11) || \
AnnaBridge 168:b9e159c1930a 321 (((RMP) & HAL_REMAPADCTRIGGER_ADC34_JEXT14) == HAL_REMAPADCTRIGGER_ADC34_JEXT14))
AnnaBridge 156:ff21514d8981 322 /**
AnnaBridge 156:ff21514d8981 323 * @}
AnnaBridge 156:ff21514d8981 324 */
AnnaBridge 156:ff21514d8981 325 #endif /* STM32F303xE || STM32F398xx */
AnnaBridge 156:ff21514d8981 326
AnnaBridge 156:ff21514d8981 327 /** @defgroup SYSCFG_FastModePlus_GPIO Fast-mode Plus on GPIO
AnnaBridge 156:ff21514d8981 328 * @{
AnnaBridge 156:ff21514d8981 329 */
AnnaBridge 156:ff21514d8981 330
AnnaBridge 156:ff21514d8981 331 /** @brief Fast-mode Plus driving capability on a specific GPIO
AnnaBridge 156:ff21514d8981 332 */
AnnaBridge 156:ff21514d8981 333 #if defined(SYSCFG_CFGR1_I2C_PB6_FMP)
AnnaBridge 156:ff21514d8981 334 #define SYSCFG_FASTMODEPLUS_PB6 ((uint32_t)SYSCFG_CFGR1_I2C_PB6_FMP) /*!< Enable Fast-mode Plus on PB6 */
AnnaBridge 156:ff21514d8981 335 #endif /* SYSCFG_CFGR1_I2C_PB6_FMP */
AnnaBridge 156:ff21514d8981 336
AnnaBridge 156:ff21514d8981 337 #if defined(SYSCFG_CFGR1_I2C_PB7_FMP)
AnnaBridge 156:ff21514d8981 338 #define SYSCFG_FASTMODEPLUS_PB7 ((uint32_t)SYSCFG_CFGR1_I2C_PB7_FMP) /*!< Enable Fast-mode Plus on PB7 */
AnnaBridge 156:ff21514d8981 339 #endif /* SYSCFG_CFGR1_I2C_PB7_FMP */
AnnaBridge 156:ff21514d8981 340
AnnaBridge 156:ff21514d8981 341 #if defined(SYSCFG_CFGR1_I2C_PB8_FMP)
AnnaBridge 156:ff21514d8981 342 #define SYSCFG_FASTMODEPLUS_PB8 ((uint32_t)SYSCFG_CFGR1_I2C_PB8_FMP) /*!< Enable Fast-mode Plus on PB8 */
AnnaBridge 156:ff21514d8981 343 #endif /* SYSCFG_CFGR1_I2C_PB8_FMP */
AnnaBridge 156:ff21514d8981 344
AnnaBridge 156:ff21514d8981 345 #if defined(SYSCFG_CFGR1_I2C_PB9_FMP)
AnnaBridge 156:ff21514d8981 346 #define SYSCFG_FASTMODEPLUS_PB9 ((uint32_t)SYSCFG_CFGR1_I2C_PB9_FMP) /*!< Enable Fast-mode Plus on PB9 */
AnnaBridge 156:ff21514d8981 347 #endif /* SYSCFG_CFGR1_I2C_PB9_FMP */
AnnaBridge 156:ff21514d8981 348 /**
AnnaBridge 156:ff21514d8981 349 * @}
AnnaBridge 156:ff21514d8981 350 */
AnnaBridge 156:ff21514d8981 351
AnnaBridge 156:ff21514d8981 352 #if defined(SYSCFG_RCR_PAGE0)
AnnaBridge 156:ff21514d8981 353 /* CCM-SRAM defined */
AnnaBridge 156:ff21514d8981 354 /** @defgroup HAL_Page_Write_Protection HAL CCM RAM page write protection
AnnaBridge 156:ff21514d8981 355 * @{
AnnaBridge 156:ff21514d8981 356 */
AnnaBridge 168:b9e159c1930a 357 #define HAL_SYSCFG_WP_PAGE0 (SYSCFG_RCR_PAGE0) /*!< ICODE SRAM Write protection page 0 */
AnnaBridge 168:b9e159c1930a 358 #define HAL_SYSCFG_WP_PAGE1 (SYSCFG_RCR_PAGE1) /*!< ICODE SRAM Write protection page 1 */
AnnaBridge 168:b9e159c1930a 359 #define HAL_SYSCFG_WP_PAGE2 (SYSCFG_RCR_PAGE2) /*!< ICODE SRAM Write protection page 2 */
AnnaBridge 168:b9e159c1930a 360 #define HAL_SYSCFG_WP_PAGE3 (SYSCFG_RCR_PAGE3) /*!< ICODE SRAM Write protection page 3 */
AnnaBridge 156:ff21514d8981 361 #if defined(SYSCFG_RCR_PAGE4)
AnnaBridge 156:ff21514d8981 362 /* More than 4KB CCM-SRAM defined */
AnnaBridge 168:b9e159c1930a 363 #define HAL_SYSCFG_WP_PAGE4 (SYSCFG_RCR_PAGE4) /*!< ICODE SRAM Write protection page 4 */
AnnaBridge 168:b9e159c1930a 364 #define HAL_SYSCFG_WP_PAGE5 (SYSCFG_RCR_PAGE5) /*!< ICODE SRAM Write protection page 5 */
AnnaBridge 168:b9e159c1930a 365 #define HAL_SYSCFG_WP_PAGE6 (SYSCFG_RCR_PAGE6) /*!< ICODE SRAM Write protection page 6 */
AnnaBridge 168:b9e159c1930a 366 #define HAL_SYSCFG_WP_PAGE7 (SYSCFG_RCR_PAGE7) /*!< ICODE SRAM Write protection page 7 */
AnnaBridge 156:ff21514d8981 367 #endif /* SYSCFG_RCR_PAGE4 */
AnnaBridge 156:ff21514d8981 368 #if defined(SYSCFG_RCR_PAGE8)
AnnaBridge 168:b9e159c1930a 369 #define HAL_SYSCFG_WP_PAGE8 (SYSCFG_RCR_PAGE8) /*!< ICODE SRAM Write protection page 8 */
AnnaBridge 168:b9e159c1930a 370 #define HAL_SYSCFG_WP_PAGE9 (SYSCFG_RCR_PAGE9) /*!< ICODE SRAM Write protection page 9 */
AnnaBridge 168:b9e159c1930a 371 #define HAL_SYSCFG_WP_PAGE10 (SYSCFG_RCR_PAGE10) /*!< ICODE SRAM Write protection page 10 */
AnnaBridge 168:b9e159c1930a 372 #define HAL_SYSCFG_WP_PAGE11 (SYSCFG_RCR_PAGE11) /*!< ICODE SRAM Write protection page 11 */
AnnaBridge 168:b9e159c1930a 373 #define HAL_SYSCFG_WP_PAGE12 (SYSCFG_RCR_PAGE12) /*!< ICODE SRAM Write protection page 12 */
AnnaBridge 168:b9e159c1930a 374 #define HAL_SYSCFG_WP_PAGE13 (SYSCFG_RCR_PAGE13) /*!< ICODE SRAM Write protection page 13 */
AnnaBridge 168:b9e159c1930a 375 #define HAL_SYSCFG_WP_PAGE14 (SYSCFG_RCR_PAGE14) /*!< ICODE SRAM Write protection page 14 */
AnnaBridge 168:b9e159c1930a 376 #define HAL_SYSCFG_WP_PAGE15 (SYSCFG_RCR_PAGE15) /*!< ICODE SRAM Write protection page 15 */
AnnaBridge 156:ff21514d8981 377 #endif /* SYSCFG_RCR_PAGE8 */
AnnaBridge 156:ff21514d8981 378
AnnaBridge 156:ff21514d8981 379 #if defined(SYSCFG_RCR_PAGE8)
AnnaBridge 156:ff21514d8981 380 #define IS_HAL_SYSCFG_WP_PAGE(__PAGE__) (((__PAGE__) > 0U) && ((__PAGE__) <= 0xFFFFU))
AnnaBridge 156:ff21514d8981 381 #elif defined(SYSCFG_RCR_PAGE4)
AnnaBridge 156:ff21514d8981 382 #define IS_HAL_SYSCFG_WP_PAGE(__PAGE__) (((__PAGE__) > 0U) && ((__PAGE__) <= 0x00FFU))
AnnaBridge 156:ff21514d8981 383 #else
AnnaBridge 156:ff21514d8981 384 #define IS_HAL_SYSCFG_WP_PAGE(__PAGE__) (((__PAGE__) > 0U) && ((__PAGE__) <= 0x000FU))
AnnaBridge 156:ff21514d8981 385 #endif /* SYSCFG_RCR_PAGE8 */
AnnaBridge 156:ff21514d8981 386 /**
AnnaBridge 156:ff21514d8981 387 * @}
AnnaBridge 156:ff21514d8981 388 */
AnnaBridge 156:ff21514d8981 389 #endif /* SYSCFG_RCR_PAGE0 */
AnnaBridge 156:ff21514d8981 390
AnnaBridge 156:ff21514d8981 391 /** @defgroup HAL_SYSCFG_Interrupts HAL SYSCFG Interrupts
AnnaBridge 156:ff21514d8981 392 * @{
AnnaBridge 156:ff21514d8981 393 */
AnnaBridge 156:ff21514d8981 394 #define HAL_SYSCFG_IT_FPU_IOC (SYSCFG_CFGR1_FPU_IE_0) /*!< Floating Point Unit Invalid operation Interrupt */
AnnaBridge 156:ff21514d8981 395 #define HAL_SYSCFG_IT_FPU_DZC (SYSCFG_CFGR1_FPU_IE_1) /*!< Floating Point Unit Divide-by-zero Interrupt */
AnnaBridge 156:ff21514d8981 396 #define HAL_SYSCFG_IT_FPU_UFC (SYSCFG_CFGR1_FPU_IE_2) /*!< Floating Point Unit Underflow Interrupt */
AnnaBridge 156:ff21514d8981 397 #define HAL_SYSCFG_IT_FPU_OFC (SYSCFG_CFGR1_FPU_IE_3) /*!< Floating Point Unit Overflow Interrupt */
AnnaBridge 156:ff21514d8981 398 #define HAL_SYSCFG_IT_FPU_IDC (SYSCFG_CFGR1_FPU_IE_4) /*!< Floating Point Unit Input denormal Interrupt */
AnnaBridge 156:ff21514d8981 399 #define HAL_SYSCFG_IT_FPU_IXC (SYSCFG_CFGR1_FPU_IE_5) /*!< Floating Point Unit Inexact Interrupt */
AnnaBridge 156:ff21514d8981 400
AnnaBridge 156:ff21514d8981 401 #define IS_HAL_SYSCFG_INTERRUPT(__INTERRUPT__) ((((__INTERRUPT__) & SYSCFG_CFGR1_FPU_IE_0) == SYSCFG_CFGR1_FPU_IE_0) || \
AnnaBridge 156:ff21514d8981 402 (((__INTERRUPT__) & SYSCFG_CFGR1_FPU_IE_1) == SYSCFG_CFGR1_FPU_IE_1) || \
AnnaBridge 156:ff21514d8981 403 (((__INTERRUPT__) & SYSCFG_CFGR1_FPU_IE_2) == SYSCFG_CFGR1_FPU_IE_2) || \
AnnaBridge 156:ff21514d8981 404 (((__INTERRUPT__) & SYSCFG_CFGR1_FPU_IE_3) == SYSCFG_CFGR1_FPU_IE_3) || \
AnnaBridge 156:ff21514d8981 405 (((__INTERRUPT__) & SYSCFG_CFGR1_FPU_IE_4) == SYSCFG_CFGR1_FPU_IE_4) || \
AnnaBridge 156:ff21514d8981 406 (((__INTERRUPT__) & SYSCFG_CFGR1_FPU_IE_5) == SYSCFG_CFGR1_FPU_IE_5))
AnnaBridge 156:ff21514d8981 407
AnnaBridge 156:ff21514d8981 408 /**
AnnaBridge 156:ff21514d8981 409 * @}
AnnaBridge 156:ff21514d8981 410 */
AnnaBridge 156:ff21514d8981 411
AnnaBridge 156:ff21514d8981 412 /**
AnnaBridge 156:ff21514d8981 413 * @}
AnnaBridge 156:ff21514d8981 414 */
AnnaBridge 156:ff21514d8981 415
AnnaBridge 156:ff21514d8981 416 /* Exported macros -----------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 417 /** @defgroup HAL_Exported_Macros HAL Exported Macros
AnnaBridge 156:ff21514d8981 418 * @{
AnnaBridge 156:ff21514d8981 419 */
AnnaBridge 156:ff21514d8981 420
AnnaBridge 156:ff21514d8981 421 /** @defgroup Debug_MCU_APB1_Freeze Freeze/Unfreeze APB1 Peripherals in Debug mode
AnnaBridge 156:ff21514d8981 422 * @{
AnnaBridge 156:ff21514d8981 423 */
AnnaBridge 156:ff21514d8981 424 #if defined(DBGMCU_APB1_FZ_DBG_TIM2_STOP)
AnnaBridge 156:ff21514d8981 425 #define __HAL_DBGMCU_FREEZE_TIM2() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM2_STOP))
AnnaBridge 156:ff21514d8981 426 #define __HAL_DBGMCU_UNFREEZE_TIM2() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM2_STOP))
AnnaBridge 156:ff21514d8981 427 #endif /* DBGMCU_APB1_FZ_DBG_TIM2_STOP */
AnnaBridge 156:ff21514d8981 428
AnnaBridge 156:ff21514d8981 429 #if defined(DBGMCU_APB1_FZ_DBG_TIM3_STOP)
AnnaBridge 156:ff21514d8981 430 #define __HAL_DBGMCU_FREEZE_TIM3() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM3_STOP))
AnnaBridge 156:ff21514d8981 431 #define __HAL_DBGMCU_UNFREEZE_TIM3() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM3_STOP))
AnnaBridge 156:ff21514d8981 432 #endif /* DBGMCU_APB1_FZ_DBG_TIM3_STOP */
AnnaBridge 156:ff21514d8981 433
AnnaBridge 156:ff21514d8981 434 #if defined(DBGMCU_APB1_FZ_DBG_TIM4_STOP)
AnnaBridge 156:ff21514d8981 435 #define __HAL_DBGMCU_FREEZE_TIM4() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM4_STOP))
AnnaBridge 156:ff21514d8981 436 #define __HAL_DBGMCU_UNFREEZE_TIM4() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM4_STOP))
AnnaBridge 156:ff21514d8981 437 #endif /* DBGMCU_APB1_FZ_DBG_TIM4_STOP */
AnnaBridge 156:ff21514d8981 438
AnnaBridge 156:ff21514d8981 439 #if defined(DBGMCU_APB1_FZ_DBG_TIM5_STOP)
AnnaBridge 156:ff21514d8981 440 #define __HAL_DBGMCU_FREEZE_TIM5() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM5_STOP))
AnnaBridge 156:ff21514d8981 441 #define __HAL_DBGMCU_UNFREEZE_TIM5() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM5_STOP))
AnnaBridge 156:ff21514d8981 442 #endif /* DBGMCU_APB1_FZ_DBG_TIM5_STOP */
AnnaBridge 156:ff21514d8981 443
AnnaBridge 156:ff21514d8981 444 #if defined(DBGMCU_APB1_FZ_DBG_TIM6_STOP)
AnnaBridge 156:ff21514d8981 445 #define __HAL_DBGMCU_FREEZE_TIM6() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM6_STOP))
AnnaBridge 156:ff21514d8981 446 #define __HAL_DBGMCU_UNFREEZE_TIM6() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM6_STOP))
AnnaBridge 156:ff21514d8981 447 #endif /* DBGMCU_APB1_FZ_DBG_TIM6_STOP */
AnnaBridge 156:ff21514d8981 448
AnnaBridge 156:ff21514d8981 449 #if defined(DBGMCU_APB1_FZ_DBG_TIM7_STOP)
AnnaBridge 156:ff21514d8981 450 #define __HAL_DBGMCU_FREEZE_TIM7() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM7_STOP))
AnnaBridge 156:ff21514d8981 451 #define __HAL_DBGMCU_UNFREEZE_TIM7() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM7_STOP))
AnnaBridge 156:ff21514d8981 452 #endif /* DBGMCU_APB1_FZ_DBG_TIM7_STOP */
AnnaBridge 156:ff21514d8981 453
AnnaBridge 156:ff21514d8981 454 #if defined(DBGMCU_APB1_FZ_DBG_TIM12_STOP)
AnnaBridge 156:ff21514d8981 455 #define __HAL_DBGMCU_FREEZE_TIM12() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM12_STOP))
AnnaBridge 156:ff21514d8981 456 #define __HAL_DBGMCU_UNFREEZE_TIM12() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM12_STOP))
AnnaBridge 156:ff21514d8981 457 #endif /* DBGMCU_APB1_FZ_DBG_TIM12_STOP */
AnnaBridge 156:ff21514d8981 458
AnnaBridge 156:ff21514d8981 459 #if defined(DBGMCU_APB1_FZ_DBG_TIM13_STOP)
AnnaBridge 156:ff21514d8981 460 #define __HAL_DBGMCU_FREEZE_TIM13() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM13_STOP))
AnnaBridge 156:ff21514d8981 461 #define __HAL_DBGMCU_UNFREEZE_TIM13() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM13_STOP))
AnnaBridge 156:ff21514d8981 462 #endif /* DBGMCU_APB1_FZ_DBG_TIM13_STOP */
AnnaBridge 156:ff21514d8981 463
AnnaBridge 156:ff21514d8981 464 #if defined(DBGMCU_APB1_FZ_DBG_TIM14_STOP)
AnnaBridge 156:ff21514d8981 465 #define __HAL_DBGMCU_FREEZE_TIM14() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM14_STOP))
AnnaBridge 156:ff21514d8981 466 #define __HAL_DBGMCU_UNFREEZE_TIM14() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM14_STOP))
AnnaBridge 156:ff21514d8981 467 #endif /* DBGMCU_APB1_FZ_DBG_TIM14_STOP */
AnnaBridge 156:ff21514d8981 468
AnnaBridge 156:ff21514d8981 469 #if defined(DBGMCU_APB1_FZ_DBG_TIM18_STOP)
AnnaBridge 156:ff21514d8981 470 #define __HAL_FREEZE_TIM18_DBGMCU() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_TIM18_STOP))
AnnaBridge 156:ff21514d8981 471 #define __HAL_UNFREEZE_TIM18_DBGMCU() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_TIM18_STOP))
AnnaBridge 156:ff21514d8981 472 #endif /* DBGMCU_APB1_FZ_DBG_TIM14_STOP */
AnnaBridge 156:ff21514d8981 473
AnnaBridge 156:ff21514d8981 474 #if defined(DBGMCU_APB1_FZ_DBG_RTC_STOP)
AnnaBridge 156:ff21514d8981 475 #define __HAL_DBGMCU_FREEZE_RTC() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_RTC_STOP))
AnnaBridge 156:ff21514d8981 476 #define __HAL_DBGMCU_UNFREEZE_RTC() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_RTC_STOP))
AnnaBridge 156:ff21514d8981 477 #endif /* DBGMCU_APB1_FZ_DBG_RTC_STOP */
AnnaBridge 156:ff21514d8981 478
AnnaBridge 156:ff21514d8981 479 #if defined(DBGMCU_APB1_FZ_DBG_WWDG_STOP)
AnnaBridge 156:ff21514d8981 480 #define __HAL_DBGMCU_FREEZE_WWDG() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_WWDG_STOP))
AnnaBridge 156:ff21514d8981 481 #define __HAL_DBGMCU_UNFREEZE_WWDG() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_WWDG_STOP))
AnnaBridge 156:ff21514d8981 482 #endif /* DBGMCU_APB1_FZ_DBG_WWDG_STOP */
AnnaBridge 156:ff21514d8981 483
AnnaBridge 156:ff21514d8981 484 #if defined(DBGMCU_APB1_FZ_DBG_IWDG_STOP)
AnnaBridge 156:ff21514d8981 485 #define __HAL_DBGMCU_FREEZE_IWDG() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_IWDG_STOP))
AnnaBridge 156:ff21514d8981 486 #define __HAL_DBGMCU_UNFREEZE_IWDG() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_IWDG_STOP))
AnnaBridge 156:ff21514d8981 487 #endif /* DBGMCU_APB1_FZ_DBG_IWDG_STOP */
AnnaBridge 156:ff21514d8981 488
AnnaBridge 156:ff21514d8981 489 #if defined(DBGMCU_APB1_FZ_DBG_I2C1_SMBUS_TIMEOUT)
AnnaBridge 156:ff21514d8981 490 #define __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_I2C1_SMBUS_TIMEOUT))
AnnaBridge 156:ff21514d8981 491 #define __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_I2C1_SMBUS_TIMEOUT))
AnnaBridge 156:ff21514d8981 492 #endif /* DBGMCU_APB1_FZ_DBG_I2C1_SMBUS_TIMEOUT */
AnnaBridge 156:ff21514d8981 493
AnnaBridge 156:ff21514d8981 494 #if defined(DBGMCU_APB1_FZ_DBG_I2C2_SMBUS_TIMEOUT)
AnnaBridge 156:ff21514d8981 495 #define __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_I2C2_SMBUS_TIMEOUT))
AnnaBridge 156:ff21514d8981 496 #define __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_I2C2_SMBUS_TIMEOUT))
AnnaBridge 156:ff21514d8981 497 #endif /* DBGMCU_APB1_FZ_DBG_I2C2_SMBUS_TIMEOUT */
AnnaBridge 156:ff21514d8981 498
AnnaBridge 156:ff21514d8981 499 #if defined(DBGMCU_APB1_FZ_DBG_I2C3_SMBUS_TIMEOUT)
AnnaBridge 156:ff21514d8981 500 #define __HAL_DBGMCU_FREEZE_I2C3_TIMEOUT() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_I2C3_SMBUS_TIMEOUT))
AnnaBridge 156:ff21514d8981 501 #define __HAL_DBGMCU_UNFREEZE_I2C3_TIMEOUT() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_I2C3_SMBUS_TIMEOUT))
AnnaBridge 156:ff21514d8981 502 #endif /* DBGMCU_APB1_FZ_DBG_I2C3_SMBUS_TIMEOUT */
AnnaBridge 156:ff21514d8981 503
AnnaBridge 156:ff21514d8981 504 #if defined(DBGMCU_APB1_FZ_DBG_CAN_STOP)
AnnaBridge 156:ff21514d8981 505 #define __HAL_FREEZE_CAN_DBGMCU() (DBGMCU->APB1FZ |= (DBGMCU_APB1_FZ_DBG_CAN_STOP))
AnnaBridge 156:ff21514d8981 506 #define __HAL_UNFREEZE_CAN_DBGMCU() (DBGMCU->APB1FZ &= ~(DBGMCU_APB1_FZ_DBG_CAN_STOP))
AnnaBridge 156:ff21514d8981 507 #endif /* DBGMCU_APB1_FZ_DBG_CAN_STOP */
AnnaBridge 156:ff21514d8981 508 /**
AnnaBridge 156:ff21514d8981 509 * @}
AnnaBridge 156:ff21514d8981 510 */
AnnaBridge 156:ff21514d8981 511
AnnaBridge 156:ff21514d8981 512 /** @defgroup Debug_MCU_APB2_Freeze Freeze/Unfreeze APB2 Peripherals in Debug mode
AnnaBridge 156:ff21514d8981 513 * @{
AnnaBridge 156:ff21514d8981 514 */
AnnaBridge 156:ff21514d8981 515 #if defined(DBGMCU_APB2_FZ_DBG_TIM1_STOP)
AnnaBridge 156:ff21514d8981 516 #define __HAL_DBGMCU_FREEZE_TIM1() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM1_STOP))
AnnaBridge 156:ff21514d8981 517 #define __HAL_DBGMCU_UNFREEZE_TIM1() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM1_STOP))
AnnaBridge 156:ff21514d8981 518 #endif /* DBGMCU_APB2_FZ_DBG_TIM1_STOP */
AnnaBridge 156:ff21514d8981 519
AnnaBridge 156:ff21514d8981 520 #if defined(DBGMCU_APB2_FZ_DBG_TIM8_STOP)
AnnaBridge 156:ff21514d8981 521 #define __HAL_DBGMCU_FREEZE_TIM8() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM8_STOP))
AnnaBridge 156:ff21514d8981 522 #define __HAL_DBGMCU_UNFREEZE_TIM8() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM8_STOP))
AnnaBridge 156:ff21514d8981 523 #endif /* DBGMCU_APB2_FZ_DBG_TIM8_STOP */
AnnaBridge 156:ff21514d8981 524
AnnaBridge 156:ff21514d8981 525 #if defined(DBGMCU_APB2_FZ_DBG_TIM15_STOP)
AnnaBridge 156:ff21514d8981 526 #define __HAL_DBGMCU_FREEZE_TIM15() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM15_STOP))
AnnaBridge 156:ff21514d8981 527 #define __HAL_DBGMCU_UNFREEZE_TIM15() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM15_STOP))
AnnaBridge 156:ff21514d8981 528 #endif /* DBGMCU_APB2_FZ_DBG_TIM15_STOP */
AnnaBridge 156:ff21514d8981 529
AnnaBridge 156:ff21514d8981 530 #if defined(DBGMCU_APB2_FZ_DBG_TIM16_STOP)
AnnaBridge 156:ff21514d8981 531 #define __HAL_DBGMCU_FREEZE_TIM16() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM16_STOP))
AnnaBridge 156:ff21514d8981 532 #define __HAL_DBGMCU_UNFREEZE_TIM16() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM16_STOP))
AnnaBridge 156:ff21514d8981 533 #endif /* DBGMCU_APB2_FZ_DBG_TIM16_STOP */
AnnaBridge 156:ff21514d8981 534
AnnaBridge 156:ff21514d8981 535 #if defined(DBGMCU_APB2_FZ_DBG_TIM17_STOP)
AnnaBridge 156:ff21514d8981 536 #define __HAL_DBGMCU_FREEZE_TIM17() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM17_STOP))
AnnaBridge 156:ff21514d8981 537 #define __HAL_DBGMCU_UNFREEZE_TIM17() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM17_STOP))
AnnaBridge 156:ff21514d8981 538 #endif /* DBGMCU_APB2_FZ_DBG_TIM17_STOP */
AnnaBridge 156:ff21514d8981 539
AnnaBridge 156:ff21514d8981 540 #if defined(DBGMCU_APB2_FZ_DBG_TIM19_STOP)
AnnaBridge 156:ff21514d8981 541 #define __HAL_FREEZE_TIM19_DBGMCU() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM19_STOP))
AnnaBridge 156:ff21514d8981 542 #define __HAL_UNFREEZE_TIM19_DBGMCU() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM19_STOP))
AnnaBridge 156:ff21514d8981 543 #endif /* DBGMCU_APB2_FZ_DBG_TIM19_STOP */
AnnaBridge 156:ff21514d8981 544
AnnaBridge 156:ff21514d8981 545 #if defined(DBGMCU_APB2_FZ_DBG_TIM20_STOP)
AnnaBridge 156:ff21514d8981 546 #define __HAL_FREEZE_TIM20_DBGMCU() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_TIM20_STOP))
AnnaBridge 156:ff21514d8981 547 #define __HAL_UNFREEZE_TIM20_DBGMCU() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_TIM20_STOP))
AnnaBridge 156:ff21514d8981 548 #endif /* DBGMCU_APB2_FZ_DBG_TIM20_STOP */
AnnaBridge 156:ff21514d8981 549
AnnaBridge 156:ff21514d8981 550 #if defined(DBGMCU_APB2_FZ_DBG_HRTIM1_STOP)
AnnaBridge 156:ff21514d8981 551 #define __HAL_FREEZE_HRTIM1_DBGMCU() (DBGMCU->APB2FZ |= (DBGMCU_APB2_FZ_DBG_HRTIM1_STOP))
AnnaBridge 156:ff21514d8981 552 #define __HAL_UNFREEZE_HRTIM1_DBGMCU() (DBGMCU->APB2FZ &= ~(DBGMCU_APB2_FZ_DBG_HRTIM1_STOP))
AnnaBridge 156:ff21514d8981 553 #endif /* DBGMCU_APB2_FZ_DBG_HRTIM1_STOP */
AnnaBridge 156:ff21514d8981 554 /**
AnnaBridge 156:ff21514d8981 555 * @}
AnnaBridge 156:ff21514d8981 556 */
AnnaBridge 156:ff21514d8981 557
AnnaBridge 156:ff21514d8981 558 /** @defgroup Memory_Mapping_Selection Memory Mapping Selection
AnnaBridge 156:ff21514d8981 559 * @{
AnnaBridge 156:ff21514d8981 560 */
AnnaBridge 156:ff21514d8981 561 #if defined(SYSCFG_CFGR1_MEM_MODE)
AnnaBridge 156:ff21514d8981 562 /** @brief Main Flash memory mapped at 0x00000000
AnnaBridge 156:ff21514d8981 563 */
AnnaBridge 156:ff21514d8981 564 #define __HAL_SYSCFG_REMAPMEMORY_FLASH() (SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_MEM_MODE))
AnnaBridge 156:ff21514d8981 565 #endif /* SYSCFG_CFGR1_MEM_MODE */
AnnaBridge 156:ff21514d8981 566
AnnaBridge 156:ff21514d8981 567 #if defined(SYSCFG_CFGR1_MEM_MODE_0)
AnnaBridge 156:ff21514d8981 568 /** @brief System Flash memory mapped at 0x00000000
AnnaBridge 156:ff21514d8981 569 */
AnnaBridge 156:ff21514d8981 570 #define __HAL_SYSCFG_REMAPMEMORY_SYSTEMFLASH() do {SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_MEM_MODE); \
AnnaBridge 156:ff21514d8981 571 SYSCFG->CFGR1 |= SYSCFG_CFGR1_MEM_MODE_0; \
AnnaBridge 156:ff21514d8981 572 }while(0U)
AnnaBridge 156:ff21514d8981 573 #endif /* SYSCFG_CFGR1_MEM_MODE_0 */
AnnaBridge 156:ff21514d8981 574
AnnaBridge 156:ff21514d8981 575 #if defined(SYSCFG_CFGR1_MEM_MODE_0) && defined(SYSCFG_CFGR1_MEM_MODE_1)
AnnaBridge 156:ff21514d8981 576 /** @brief Embedded SRAM mapped at 0x00000000
AnnaBridge 156:ff21514d8981 577 */
AnnaBridge 156:ff21514d8981 578 #define __HAL_SYSCFG_REMAPMEMORY_SRAM() do {SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_MEM_MODE); \
AnnaBridge 156:ff21514d8981 579 SYSCFG->CFGR1 |= (SYSCFG_CFGR1_MEM_MODE_0 | SYSCFG_CFGR1_MEM_MODE_1); \
AnnaBridge 156:ff21514d8981 580 }while(0U)
AnnaBridge 156:ff21514d8981 581 #endif /* SYSCFG_CFGR1_MEM_MODE_0 && SYSCFG_CFGR1_MEM_MODE_1 */
AnnaBridge 156:ff21514d8981 582
AnnaBridge 156:ff21514d8981 583 #if defined(SYSCFG_CFGR1_MEM_MODE_2)
AnnaBridge 156:ff21514d8981 584 #define __HAL_SYSCFG_FMC_BANK() do {SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_MEM_MODE); \
AnnaBridge 156:ff21514d8981 585 SYSCFG->CFGR1 |= (SYSCFG_CFGR1_MEM_MODE_2); \
AnnaBridge 156:ff21514d8981 586 }while(0U)
AnnaBridge 156:ff21514d8981 587 #endif /* SYSCFG_CFGR1_MEM_MODE_2 */
AnnaBridge 156:ff21514d8981 588 /**
AnnaBridge 156:ff21514d8981 589 * @}
AnnaBridge 156:ff21514d8981 590 */
AnnaBridge 156:ff21514d8981 591
AnnaBridge 156:ff21514d8981 592 /** @defgroup Encoder_Mode Encoder Mode
AnnaBridge 156:ff21514d8981 593 * @{
AnnaBridge 156:ff21514d8981 594 */
AnnaBridge 156:ff21514d8981 595 #if defined(SYSCFG_CFGR1_ENCODER_MODE)
AnnaBridge 156:ff21514d8981 596 /** @brief No Encoder mode
AnnaBridge 156:ff21514d8981 597 */
AnnaBridge 156:ff21514d8981 598 #define __HAL_REMAPENCODER_NONE() (SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_ENCODER_MODE))
AnnaBridge 156:ff21514d8981 599 #endif /* SYSCFG_CFGR1_ENCODER_MODE */
AnnaBridge 156:ff21514d8981 600
AnnaBridge 156:ff21514d8981 601 #if defined(SYSCFG_CFGR1_ENCODER_MODE_0)
AnnaBridge 156:ff21514d8981 602 /** @brief Encoder mode : TIM2 IC1 and TIM2 IC2 are connected to TIM15 IC1 and TIM15 IC2 respectively
AnnaBridge 156:ff21514d8981 603 */
AnnaBridge 156:ff21514d8981 604 #define __HAL_REMAPENCODER_TIM2() do {SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_ENCODER_MODE); \
AnnaBridge 156:ff21514d8981 605 SYSCFG->CFGR1 |= SYSCFG_CFGR1_ENCODER_MODE_0; \
AnnaBridge 156:ff21514d8981 606 }while(0U)
AnnaBridge 156:ff21514d8981 607 #endif /* SYSCFG_CFGR1_ENCODER_MODE_0 */
AnnaBridge 156:ff21514d8981 608
AnnaBridge 156:ff21514d8981 609 #if defined(SYSCFG_CFGR1_ENCODER_MODE_1)
AnnaBridge 156:ff21514d8981 610 /** @brief Encoder mode : TIM3 IC1 and TIM3 IC2 are connected to TIM15 IC1 and TIM15 IC2 respectively
AnnaBridge 156:ff21514d8981 611 */
AnnaBridge 156:ff21514d8981 612 #define __HAL_REMAPENCODER_TIM3() do {SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_ENCODER_MODE); \
AnnaBridge 156:ff21514d8981 613 SYSCFG->CFGR1 |= SYSCFG_CFGR1_ENCODER_MODE_1; \
AnnaBridge 156:ff21514d8981 614 }while(0U)
AnnaBridge 156:ff21514d8981 615 #endif /* SYSCFG_CFGR1_ENCODER_MODE_1 */
AnnaBridge 156:ff21514d8981 616
AnnaBridge 156:ff21514d8981 617 #if defined(SYSCFG_CFGR1_ENCODER_MODE_0) && defined(SYSCFG_CFGR1_ENCODER_MODE_1)
AnnaBridge 156:ff21514d8981 618 /** @brief Encoder mode : TIM4 IC1 and TIM4 IC2 are connected to TIM15 IC1 and TIM15 IC2 (STM32F303xB/C and STM32F358xx devices)
AnnaBridge 156:ff21514d8981 619 */
AnnaBridge 156:ff21514d8981 620 #define __HAL_REMAPENCODER_TIM4() do {SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_ENCODER_MODE); \
AnnaBridge 156:ff21514d8981 621 SYSCFG->CFGR1 |= (SYSCFG_CFGR1_ENCODER_MODE_0 | SYSCFG_CFGR1_ENCODER_MODE_1); \
AnnaBridge 156:ff21514d8981 622 }while(0U)
AnnaBridge 156:ff21514d8981 623 #endif /* SYSCFG_CFGR1_ENCODER_MODE_0 && SYSCFG_CFGR1_ENCODER_MODE_1 */
AnnaBridge 156:ff21514d8981 624 /**
AnnaBridge 156:ff21514d8981 625 * @}
AnnaBridge 156:ff21514d8981 626 */
AnnaBridge 156:ff21514d8981 627
AnnaBridge 156:ff21514d8981 628 /** @defgroup DMA_Remap_Enable DMA Remap Enable
AnnaBridge 156:ff21514d8981 629 * @{
AnnaBridge 156:ff21514d8981 630 */
AnnaBridge 156:ff21514d8981 631 #if defined(SYSCFG_CFGR3_DMA_RMP) && defined(SYSCFG_CFGR1_DMA_RMP)
AnnaBridge 156:ff21514d8981 632 /** @brief DMA remapping enable/disable macros
AnnaBridge 168:b9e159c1930a 633 * @param __DMA_REMAP__ This parameter can be a value of @ref HAL_DMA_Remapping
AnnaBridge 156:ff21514d8981 634 */
AnnaBridge 156:ff21514d8981 635 #define __HAL_DMA_REMAP_CHANNEL_ENABLE(__DMA_REMAP__) do {assert_param(IS_DMA_REMAP((__DMA_REMAP__))); \
AnnaBridge 156:ff21514d8981 636 (((__DMA_REMAP__) & HAL_REMAP_CFGR3_MASK) ? \
AnnaBridge 156:ff21514d8981 637 (SYSCFG->CFGR3 |= ((__DMA_REMAP__) & ~HAL_REMAP_CFGR3_MASK)) : \
AnnaBridge 156:ff21514d8981 638 (SYSCFG->CFGR1 |= (__DMA_REMAP__))); \
AnnaBridge 156:ff21514d8981 639 }while(0U)
AnnaBridge 156:ff21514d8981 640 #define __HAL_DMA_REMAP_CHANNEL_DISABLE(__DMA_REMAP__) do {assert_param(IS_DMA_REMAP((__DMA_REMAP__))); \
AnnaBridge 156:ff21514d8981 641 (((__DMA_REMAP__) & HAL_REMAP_CFGR3_MASK) ? \
AnnaBridge 156:ff21514d8981 642 (SYSCFG->CFGR3 &= (~(__DMA_REMAP__) | HAL_REMAP_CFGR3_MASK)) : \
AnnaBridge 156:ff21514d8981 643 (SYSCFG->CFGR1 &= ~(__DMA_REMAP__))); \
AnnaBridge 156:ff21514d8981 644 }while(0U)
AnnaBridge 156:ff21514d8981 645 #elif defined(SYSCFG_CFGR1_DMA_RMP)
AnnaBridge 156:ff21514d8981 646 /** @brief DMA remapping enable/disable macros
AnnaBridge 168:b9e159c1930a 647 * @param __DMA_REMAP__ This parameter can be a value of @ref HAL_DMA_Remapping
AnnaBridge 156:ff21514d8981 648 */
AnnaBridge 156:ff21514d8981 649 #define __HAL_DMA_REMAP_CHANNEL_ENABLE(__DMA_REMAP__) do {assert_param(IS_DMA_REMAP((__DMA_REMAP__))); \
AnnaBridge 156:ff21514d8981 650 SYSCFG->CFGR1 |= (__DMA_REMAP__); \
AnnaBridge 156:ff21514d8981 651 }while(0U)
AnnaBridge 156:ff21514d8981 652 #define __HAL_DMA_REMAP_CHANNEL_DISABLE(__DMA_REMAP__) do {assert_param(IS_DMA_REMAP((__DMA_REMAP__))); \
AnnaBridge 156:ff21514d8981 653 SYSCFG->CFGR1 &= ~(__DMA_REMAP__); \
AnnaBridge 156:ff21514d8981 654 }while(0U)
AnnaBridge 156:ff21514d8981 655 #endif /* SYSCFG_CFGR3_DMA_RMP || SYSCFG_CFGR1_DMA_RMP */
AnnaBridge 156:ff21514d8981 656 /**
AnnaBridge 156:ff21514d8981 657 * @}
AnnaBridge 156:ff21514d8981 658 */
AnnaBridge 156:ff21514d8981 659
AnnaBridge 156:ff21514d8981 660 /** @defgroup FastModePlus_GPIO Fast-mode Plus on GPIO
AnnaBridge 156:ff21514d8981 661 * @{
AnnaBridge 156:ff21514d8981 662 */
AnnaBridge 156:ff21514d8981 663 /** @brief Fast-mode Plus driving capability enable/disable macros
AnnaBridge 168:b9e159c1930a 664 * @param __FASTMODEPLUS__ This parameter can be a value of @ref SYSCFG_FastModePlus_GPIO values.
AnnaBridge 156:ff21514d8981 665 * That you can find above these macros.
AnnaBridge 156:ff21514d8981 666 */
AnnaBridge 156:ff21514d8981 667 #define __HAL_SYSCFG_FASTMODEPLUS_ENABLE(__FASTMODEPLUS__) do {assert_param(IS_SYSCFG_FASTMODEPLUS((__FASTMODEPLUS__)));\
AnnaBridge 156:ff21514d8981 668 SET_BIT(SYSCFG->CFGR1, (__FASTMODEPLUS__));\
AnnaBridge 156:ff21514d8981 669 }while(0U)
AnnaBridge 156:ff21514d8981 670
AnnaBridge 156:ff21514d8981 671 #define __HAL_SYSCFG_FASTMODEPLUS_DISABLE(__FASTMODEPLUS__) do {assert_param(IS_SYSCFG_FASTMODEPLUS((__FASTMODEPLUS__)));\
AnnaBridge 156:ff21514d8981 672 CLEAR_BIT(SYSCFG->CFGR1, (__FASTMODEPLUS__));\
AnnaBridge 156:ff21514d8981 673 }while(0U)
AnnaBridge 156:ff21514d8981 674 /**
AnnaBridge 156:ff21514d8981 675 * @}
AnnaBridge 156:ff21514d8981 676 */
AnnaBridge 156:ff21514d8981 677
AnnaBridge 156:ff21514d8981 678 /** @defgroup Floating_Point_Unit_Interrupts_Enable Floating Point Unit Interrupts Enable
AnnaBridge 156:ff21514d8981 679 * @{
AnnaBridge 156:ff21514d8981 680 */
AnnaBridge 156:ff21514d8981 681 /** @brief SYSCFG interrupt enable/disable macros
AnnaBridge 168:b9e159c1930a 682 * @param __INTERRUPT__ This parameter can be a value of @ref HAL_SYSCFG_Interrupts
AnnaBridge 156:ff21514d8981 683 */
AnnaBridge 156:ff21514d8981 684 #define __HAL_SYSCFG_INTERRUPT_ENABLE(__INTERRUPT__) do {assert_param(IS_HAL_SYSCFG_INTERRUPT((__INTERRUPT__))); \
AnnaBridge 156:ff21514d8981 685 SYSCFG->CFGR1 |= (__INTERRUPT__); \
AnnaBridge 156:ff21514d8981 686 }while(0U)
AnnaBridge 156:ff21514d8981 687
AnnaBridge 156:ff21514d8981 688 #define __HAL_SYSCFG_INTERRUPT_DISABLE(__INTERRUPT__) do {assert_param(IS_HAL_SYSCFG_INTERRUPT((__INTERRUPT__))); \
AnnaBridge 156:ff21514d8981 689 SYSCFG->CFGR1 &= ~(__INTERRUPT__); \
AnnaBridge 156:ff21514d8981 690 }while(0U)
AnnaBridge 156:ff21514d8981 691 /**
AnnaBridge 156:ff21514d8981 692 * @}
AnnaBridge 156:ff21514d8981 693 */
AnnaBridge 156:ff21514d8981 694
AnnaBridge 156:ff21514d8981 695 #if defined(SYSCFG_CFGR1_USB_IT_RMP)
AnnaBridge 156:ff21514d8981 696 /** @defgroup USB_Interrupt_Remap USB Interrupt Remap
AnnaBridge 156:ff21514d8981 697 * @{
AnnaBridge 156:ff21514d8981 698 */
AnnaBridge 156:ff21514d8981 699 /** @brief USB interrupt remapping enable/disable macros
AnnaBridge 156:ff21514d8981 700 */
AnnaBridge 156:ff21514d8981 701 #define __HAL_REMAPINTERRUPT_USB_ENABLE() (SYSCFG->CFGR1 |= (SYSCFG_CFGR1_USB_IT_RMP))
AnnaBridge 156:ff21514d8981 702 #define __HAL_REMAPINTERRUPT_USB_DISABLE() (SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_USB_IT_RMP))
AnnaBridge 156:ff21514d8981 703 /**
AnnaBridge 156:ff21514d8981 704 * @}
AnnaBridge 156:ff21514d8981 705 */
AnnaBridge 156:ff21514d8981 706 #endif /* SYSCFG_CFGR1_USB_IT_RMP */
AnnaBridge 156:ff21514d8981 707
AnnaBridge 156:ff21514d8981 708 #if defined(SYSCFG_CFGR1_VBAT)
AnnaBridge 156:ff21514d8981 709 /** @defgroup VBAT_Monitoring_Enable VBAT Monitoring Enable
AnnaBridge 156:ff21514d8981 710 * @{
AnnaBridge 156:ff21514d8981 711 */
AnnaBridge 156:ff21514d8981 712 /** @brief SYSCFG interrupt enable/disable macros
AnnaBridge 156:ff21514d8981 713 */
AnnaBridge 156:ff21514d8981 714 #define __HAL_SYSCFG_VBAT_MONITORING_ENABLE() (SYSCFG->CFGR1 |= (SYSCFG_CFGR1_VBAT))
AnnaBridge 156:ff21514d8981 715 #define __HAL_SYSCFG_VBAT_MONITORING_DISABLE() (SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_VBAT))
AnnaBridge 156:ff21514d8981 716 /**
AnnaBridge 156:ff21514d8981 717 * @}
AnnaBridge 156:ff21514d8981 718 */
AnnaBridge 156:ff21514d8981 719 #endif /* SYSCFG_CFGR1_VBAT */
AnnaBridge 156:ff21514d8981 720
AnnaBridge 156:ff21514d8981 721 #if defined(SYSCFG_CFGR2_LOCKUP_LOCK)
AnnaBridge 156:ff21514d8981 722 /** @defgroup Cortex_Lockup_Enable Cortex Lockup Enable
AnnaBridge 156:ff21514d8981 723 * @{
AnnaBridge 156:ff21514d8981 724 */
AnnaBridge 156:ff21514d8981 725 /** @brief SYSCFG Break Lockup lock
AnnaBridge 156:ff21514d8981 726 * Enables and locks the connection of Cortex-M4 LOCKUP (Hardfault) output to TIM1/15/16/17 Break input
AnnaBridge 156:ff21514d8981 727 * @note The selected configuration is locked and can be unlocked by system reset
AnnaBridge 156:ff21514d8981 728 */
AnnaBridge 156:ff21514d8981 729 #define __HAL_SYSCFG_BREAK_LOCKUP_LOCK() do {SYSCFG->CFGR2 &= ~(SYSCFG_CFGR2_LOCKUP_LOCK); \
AnnaBridge 156:ff21514d8981 730 SYSCFG->CFGR2 |= SYSCFG_CFGR2_LOCKUP_LOCK; \
AnnaBridge 156:ff21514d8981 731 }while(0U)
AnnaBridge 156:ff21514d8981 732 /**
AnnaBridge 156:ff21514d8981 733 * @}
AnnaBridge 156:ff21514d8981 734 */
AnnaBridge 156:ff21514d8981 735 #endif /* SYSCFG_CFGR2_LOCKUP_LOCK */
AnnaBridge 156:ff21514d8981 736
AnnaBridge 156:ff21514d8981 737 #if defined(SYSCFG_CFGR2_PVD_LOCK)
AnnaBridge 156:ff21514d8981 738 /** @defgroup PVD_Lock_Enable PVD Lock
AnnaBridge 156:ff21514d8981 739 * @{
AnnaBridge 156:ff21514d8981 740 */
AnnaBridge 156:ff21514d8981 741 /** @brief SYSCFG Break PVD lock
AnnaBridge 156:ff21514d8981 742 * Enables and locks the PVD connection with Timer1/8/15/16/17 Break Input, , as well as the PVDE and PLS[2:0] in the PWR_CR register
AnnaBridge 156:ff21514d8981 743 * @note The selected configuration is locked and can be unlocked by system reset
AnnaBridge 156:ff21514d8981 744 */
AnnaBridge 156:ff21514d8981 745 #define __HAL_SYSCFG_BREAK_PVD_LOCK() do {SYSCFG->CFGR2 &= ~(SYSCFG_CFGR2_PVD_LOCK); \
AnnaBridge 156:ff21514d8981 746 SYSCFG->CFGR2 |= SYSCFG_CFGR2_PVD_LOCK; \
AnnaBridge 156:ff21514d8981 747 }while(0U)
AnnaBridge 156:ff21514d8981 748 /**
AnnaBridge 156:ff21514d8981 749 * @}
AnnaBridge 156:ff21514d8981 750 */
AnnaBridge 156:ff21514d8981 751 #endif /* SYSCFG_CFGR2_PVD_LOCK */
AnnaBridge 156:ff21514d8981 752
AnnaBridge 156:ff21514d8981 753 #if defined(SYSCFG_CFGR2_SRAM_PARITY_LOCK)
AnnaBridge 156:ff21514d8981 754 /** @defgroup SRAM_Parity_Lock SRAM Parity Lock
AnnaBridge 156:ff21514d8981 755 * @{
AnnaBridge 156:ff21514d8981 756 */
AnnaBridge 156:ff21514d8981 757 /** @brief SYSCFG Break SRAM PARITY lock
AnnaBridge 156:ff21514d8981 758 * Enables and locks the SRAM_PARITY error signal with Break Input of TIMER1/8/15/16/17
AnnaBridge 156:ff21514d8981 759 * @note The selected configuration is locked and can be unlocked by system reset
AnnaBridge 156:ff21514d8981 760 */
AnnaBridge 156:ff21514d8981 761 #define __HAL_SYSCFG_BREAK_SRAMPARITY_LOCK() do {SYSCFG->CFGR2 &= ~(SYSCFG_CFGR2_SRAM_PARITY_LOCK); \
AnnaBridge 156:ff21514d8981 762 SYSCFG->CFGR2 |= SYSCFG_CFGR2_SRAM_PARITY_LOCK; \
AnnaBridge 156:ff21514d8981 763 }while(0U)
AnnaBridge 156:ff21514d8981 764 /**
AnnaBridge 156:ff21514d8981 765 * @}
AnnaBridge 156:ff21514d8981 766 */
AnnaBridge 156:ff21514d8981 767 #endif /* SYSCFG_CFGR2_SRAM_PARITY_LOCK */
AnnaBridge 156:ff21514d8981 768
AnnaBridge 156:ff21514d8981 769 /** @defgroup Trigger_Remapping_Enable Trigger Remapping Enable
AnnaBridge 156:ff21514d8981 770 * @{
AnnaBridge 156:ff21514d8981 771 */
AnnaBridge 156:ff21514d8981 772 #if defined(SYSCFG_CFGR3_TRIGGER_RMP)
AnnaBridge 156:ff21514d8981 773 /** @brief Trigger remapping enable/disable macros
AnnaBridge 168:b9e159c1930a 774 * @param __TRIGGER_REMAP__ This parameter can be a value of @ref HAL_Trigger_Remapping
AnnaBridge 156:ff21514d8981 775 */
AnnaBridge 156:ff21514d8981 776 #define __HAL_REMAPTRIGGER_ENABLE(__TRIGGER_REMAP__) do {assert_param(IS_HAL_REMAPTRIGGER((__TRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 777 (((__TRIGGER_REMAP__) & HAL_REMAP_CFGR3_MASK) ? \
AnnaBridge 156:ff21514d8981 778 (SYSCFG->CFGR3 |= ((__TRIGGER_REMAP__) & ~HAL_REMAP_CFGR3_MASK)) : \
AnnaBridge 156:ff21514d8981 779 (SYSCFG->CFGR1 |= (__TRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 780 }while(0U)
AnnaBridge 156:ff21514d8981 781 #define __HAL_REMAPTRIGGER_DISABLE(__TRIGGER_REMAP__) do {assert_param(IS_HAL_REMAPTRIGGER((__TRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 782 (((__TRIGGER_REMAP__) & HAL_REMAP_CFGR3_MASK) ? \
AnnaBridge 156:ff21514d8981 783 (SYSCFG->CFGR3 &= (~(__TRIGGER_REMAP__) | HAL_REMAP_CFGR3_MASK)) : \
AnnaBridge 156:ff21514d8981 784 (SYSCFG->CFGR1 &= ~(__TRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 785 }while(0U)
AnnaBridge 156:ff21514d8981 786 #else
AnnaBridge 156:ff21514d8981 787 /** @brief Trigger remapping enable/disable macros
AnnaBridge 168:b9e159c1930a 788 * @param __TRIGGER_REMAP__ This parameter can be a value of @ref HAL_Trigger_Remapping
AnnaBridge 156:ff21514d8981 789 */
AnnaBridge 156:ff21514d8981 790 #define __HAL_REMAPTRIGGER_ENABLE(__TRIGGER_REMAP__) do {assert_param(IS_HAL_REMAPTRIGGER((__TRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 791 (SYSCFG->CFGR1 |= (__TRIGGER_REMAP__)); \
AnnaBridge 156:ff21514d8981 792 }while(0U)
AnnaBridge 156:ff21514d8981 793 #define __HAL_REMAPTRIGGER_DISABLE(__TRIGGER_REMAP__) do {assert_param(IS_HAL_REMAPTRIGGER((__TRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 794 (SYSCFG->CFGR1 &= ~(__TRIGGER_REMAP__)); \
AnnaBridge 156:ff21514d8981 795 }while(0U)
AnnaBridge 156:ff21514d8981 796 #endif /* SYSCFG_CFGR3_TRIGGER_RMP */
AnnaBridge 156:ff21514d8981 797 /**
AnnaBridge 156:ff21514d8981 798 * @}
AnnaBridge 156:ff21514d8981 799 */
AnnaBridge 156:ff21514d8981 800
AnnaBridge 156:ff21514d8981 801 #if defined (STM32F302xE) || defined (STM32F303xE) || defined (STM32F398xx)
AnnaBridge 156:ff21514d8981 802 /** @defgroup ADC_Trigger_Remapping_Enable ADC Trigger Remapping Enable
AnnaBridge 156:ff21514d8981 803 * @{
AnnaBridge 156:ff21514d8981 804 */
AnnaBridge 156:ff21514d8981 805 /** @brief ADC trigger remapping enable/disable macros
AnnaBridge 168:b9e159c1930a 806 * @param __ADCTRIGGER_REMAP__ This parameter can be a value of @ref HAL_ADC_Trigger_Remapping
AnnaBridge 156:ff21514d8981 807 */
AnnaBridge 156:ff21514d8981 808 #define __HAL_REMAPADCTRIGGER_ENABLE(__ADCTRIGGER_REMAP__) do {assert_param(IS_HAL_REMAPADCTRIGGER((__ADCTRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 809 (SYSCFG->CFGR4 |= (__ADCTRIGGER_REMAP__)); \
AnnaBridge 156:ff21514d8981 810 }while(0U)
AnnaBridge 156:ff21514d8981 811 #define __HAL_REMAPADCTRIGGER_DISABLE(__ADCTRIGGER_REMAP__) do {assert_param(IS_HAL_REMAPADCTRIGGER((__ADCTRIGGER_REMAP__))); \
AnnaBridge 156:ff21514d8981 812 (SYSCFG->CFGR4 &= ~(__ADCTRIGGER_REMAP__)); \
AnnaBridge 156:ff21514d8981 813 }while(0U)
AnnaBridge 156:ff21514d8981 814 /**
AnnaBridge 156:ff21514d8981 815 * @}
AnnaBridge 156:ff21514d8981 816 */
AnnaBridge 156:ff21514d8981 817 #endif /* STM32F302xE || STM32F303xE || STM32F398xx */
AnnaBridge 156:ff21514d8981 818
AnnaBridge 156:ff21514d8981 819 #if defined(SYSCFG_CFGR2_BYP_ADDR_PAR)
AnnaBridge 156:ff21514d8981 820 /** @defgroup RAM_Parity_Check_Disable RAM Parity Check Disable
AnnaBridge 156:ff21514d8981 821 * @{
AnnaBridge 156:ff21514d8981 822 */
AnnaBridge 156:ff21514d8981 823 /**
AnnaBridge 156:ff21514d8981 824 * @brief Parity check on RAM disable macro
AnnaBridge 156:ff21514d8981 825 * @note Disabling the parity check on RAM locks the configuration bit.
AnnaBridge 156:ff21514d8981 826 * To re-enable the parity check on RAM perform a system reset.
AnnaBridge 156:ff21514d8981 827 */
AnnaBridge 156:ff21514d8981 828 #define __HAL_SYSCFG_RAM_PARITYCHECK_DISABLE() (*(__IO uint32_t *) CFGR2_BYPADDRPAR_BB = 0x00000001U)
AnnaBridge 156:ff21514d8981 829 /**
AnnaBridge 156:ff21514d8981 830 * @}
AnnaBridge 156:ff21514d8981 831 */
AnnaBridge 156:ff21514d8981 832 #endif /* SYSCFG_CFGR2_BYP_ADDR_PAR */
AnnaBridge 156:ff21514d8981 833
AnnaBridge 156:ff21514d8981 834 #if defined(SYSCFG_RCR_PAGE0)
AnnaBridge 156:ff21514d8981 835 /** @defgroup CCM_RAM_Page_Write_Protection_Enable CCM RAM page write protection enable
AnnaBridge 156:ff21514d8981 836 * @{
AnnaBridge 156:ff21514d8981 837 */
AnnaBridge 156:ff21514d8981 838 /** @brief CCM RAM page write protection enable macro
AnnaBridge 168:b9e159c1930a 839 * @param __PAGE_WP__ This parameter can be a value of @ref HAL_Page_Write_Protection
AnnaBridge 156:ff21514d8981 840 * @note write protection can only be disabled by a system reset
AnnaBridge 156:ff21514d8981 841 */
AnnaBridge 156:ff21514d8981 842 #define __HAL_SYSCFG_SRAM_WRP_ENABLE(__PAGE_WP__) do {assert_param(IS_HAL_SYSCFG_WP_PAGE((__PAGE_WP__))); \
AnnaBridge 156:ff21514d8981 843 SYSCFG->RCR |= (__PAGE_WP__); \
AnnaBridge 156:ff21514d8981 844 }while(0U)
AnnaBridge 156:ff21514d8981 845 /**
AnnaBridge 156:ff21514d8981 846 * @}
AnnaBridge 156:ff21514d8981 847 */
AnnaBridge 156:ff21514d8981 848 #endif /* SYSCFG_RCR_PAGE0 */
AnnaBridge 156:ff21514d8981 849
AnnaBridge 156:ff21514d8981 850 /**
AnnaBridge 156:ff21514d8981 851 * @}
AnnaBridge 156:ff21514d8981 852 */
AnnaBridge 156:ff21514d8981 853 /* Exported functions --------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 854 /** @addtogroup HAL_Exported_Functions HAL Exported Functions
AnnaBridge 156:ff21514d8981 855 * @{
AnnaBridge 156:ff21514d8981 856 */
AnnaBridge 156:ff21514d8981 857
AnnaBridge 156:ff21514d8981 858 /** @addtogroup HAL_Exported_Functions_Group1 Initialization and de-initialization Functions
AnnaBridge 156:ff21514d8981 859 * @brief Initialization and de-initialization functions
AnnaBridge 156:ff21514d8981 860 * @{
AnnaBridge 156:ff21514d8981 861 */
AnnaBridge 156:ff21514d8981 862 /* Initialization and de-initialization functions ******************************/
AnnaBridge 156:ff21514d8981 863 HAL_StatusTypeDef HAL_Init(void);
AnnaBridge 156:ff21514d8981 864 HAL_StatusTypeDef HAL_DeInit(void);
AnnaBridge 156:ff21514d8981 865 void HAL_MspInit(void);
AnnaBridge 156:ff21514d8981 866 void HAL_MspDeInit(void);
AnnaBridge 156:ff21514d8981 867 HAL_StatusTypeDef HAL_InitTick (uint32_t TickPriority);
AnnaBridge 156:ff21514d8981 868 /**
AnnaBridge 156:ff21514d8981 869 * @}
AnnaBridge 156:ff21514d8981 870 */
AnnaBridge 156:ff21514d8981 871
AnnaBridge 156:ff21514d8981 872 /** @addtogroup HAL_Exported_Functions_Group2 HAL Control functions
AnnaBridge 156:ff21514d8981 873 * @brief HAL Control functions
AnnaBridge 156:ff21514d8981 874 * @{
AnnaBridge 156:ff21514d8981 875 */
AnnaBridge 156:ff21514d8981 876 /* Peripheral Control functions ************************************************/
AnnaBridge 156:ff21514d8981 877 void HAL_IncTick(void);
AnnaBridge 156:ff21514d8981 878 void HAL_Delay(__IO uint32_t Delay);
AnnaBridge 156:ff21514d8981 879 void HAL_SuspendTick(void);
AnnaBridge 156:ff21514d8981 880 void HAL_ResumeTick(void);
AnnaBridge 156:ff21514d8981 881 uint32_t HAL_GetTick(void);
AnnaBridge 156:ff21514d8981 882 uint32_t HAL_GetHalVersion(void);
AnnaBridge 156:ff21514d8981 883 uint32_t HAL_GetREVID(void);
AnnaBridge 156:ff21514d8981 884 uint32_t HAL_GetDEVID(void);
AnnaBridge 168:b9e159c1930a 885 uint32_t HAL_GetUIDw0(void);
AnnaBridge 168:b9e159c1930a 886 uint32_t HAL_GetUIDw1(void);
AnnaBridge 168:b9e159c1930a 887 uint32_t HAL_GetUIDw2(void);
AnnaBridge 156:ff21514d8981 888 void HAL_DBGMCU_EnableDBGSleepMode(void);
AnnaBridge 156:ff21514d8981 889 void HAL_DBGMCU_DisableDBGSleepMode(void);
AnnaBridge 156:ff21514d8981 890 void HAL_DBGMCU_EnableDBGStopMode(void);
AnnaBridge 156:ff21514d8981 891 void HAL_DBGMCU_DisableDBGStopMode(void);
AnnaBridge 156:ff21514d8981 892 void HAL_DBGMCU_EnableDBGStandbyMode(void);
AnnaBridge 156:ff21514d8981 893 void HAL_DBGMCU_DisableDBGStandbyMode(void);
AnnaBridge 156:ff21514d8981 894 /**
AnnaBridge 156:ff21514d8981 895 * @}
AnnaBridge 156:ff21514d8981 896 */
AnnaBridge 156:ff21514d8981 897
AnnaBridge 156:ff21514d8981 898 /**
AnnaBridge 156:ff21514d8981 899 * @}
AnnaBridge 156:ff21514d8981 900 */
AnnaBridge 156:ff21514d8981 901
AnnaBridge 156:ff21514d8981 902 /**
AnnaBridge 156:ff21514d8981 903 * @}
AnnaBridge 156:ff21514d8981 904 */
AnnaBridge 156:ff21514d8981 905
AnnaBridge 156:ff21514d8981 906 /**
AnnaBridge 156:ff21514d8981 907 * @}
AnnaBridge 156:ff21514d8981 908 */
AnnaBridge 156:ff21514d8981 909
AnnaBridge 156:ff21514d8981 910 #ifdef __cplusplus
AnnaBridge 156:ff21514d8981 911 }
AnnaBridge 156:ff21514d8981 912 #endif
AnnaBridge 156:ff21514d8981 913
AnnaBridge 156:ff21514d8981 914 #endif /* __STM32F3xx_HAL_H */
AnnaBridge 156:ff21514d8981 915
AnnaBridge 156:ff21514d8981 916 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/