mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

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

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****/