mbed official / mbed

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

Committer:
Kojto
Date:
Thu Jul 07 14:34:11 2016 +0100
Revision:
122:f9eeca106725
Parent:
93:e188a91d3eaa
Child:
123:b0220dba8be7
Release 122 of the mbed library

Changes:
- new targets - Nucleo L432KC, Beetle, Nucleo F446ZE, Nucleo L011K4
- Thread safety addition - mbed API should contain a statement about thread safety
- critical section API addition
- CAS API (core_util_atomic_incr/decr)
- DEVICE_ are generated from targets.json file, device.h deprecated
- Callback replaces FunctionPointer to provide std like interface
- mbed HAL API docs improvements
- toolchain - prexif attributes with MBED_
- add new attributes - packed, weak, forcedinline, align
- target.json - contains targets definitions
- ST - L1XX - Cube update to 1.5
- SPI clock selection fix (clock from APB domain)
- F7 - Cube update v1.4.0
- L0 - baudrate init fix
- L1 - Cube update v1.5
- F3 - baudrate init fix, 3 targets CAN support
- F4 - Cube update v1.12.0, 3 targets CAN support
- L4XX - Cube update v1.5.1
- F0 - update Cube to v1.5.0
- L4 - 2 targets (L476RG/VG) CAN support
- NXP - pwm clock fix for KSDK2 MCU
- LPC2368 - remove ARM toolchain support - due to regression
- KSDK2 - fix SPI , I2C address and repeat start
- Silabs - some fixes backported from mbed 3
- Renesas - RZ_A1H - SystemCoreClockUpdate addition

Who changed what in which revision?

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