Modified version of the mbed library for use with the Nucleo boards.

Dependents:   EEPROMWrite Full-Project

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Mon Sep 28 20:15:09 2015 +0100
Revision:
634:ac7d6880524d
Parent:
632:7687fb9c4f91
Synchronized with git revision 9b7d23d47153c298a6d24de9a415202705889d11

Full URL: https://github.com/mbedmicro/mbed/commit/9b7d23d47153c298a6d24de9a415202705889d11/

Revert "[NUCLEO_F303K8] add support of the STM32F303K8"

Who changed what in which revision?

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