fix LPC812 PWM

Dependents:   IR_LED_Send

Fork of mbed-dev by mbed official

Committer:
nameless129
Date:
Mon May 16 16:50:30 2016 +0000
Revision:
129:2e517c56bcfb
Parent:
124:6a4a5b7d7324
PWM Fix:Duty 0%??H???????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bogdanm 0:9b334a45a8ff 1 /**
bogdanm 0:9b334a45a8ff 2 ******************************************************************************
bogdanm 0:9b334a45a8ff 3 * @file stm32f1xx_hal_gpio_ex.h
bogdanm 0:9b334a45a8ff 4 * @author MCD Application Team
mbed_official 124:6a4a5b7d7324 5 * @version V1.0.4
mbed_official 124:6a4a5b7d7324 6 * @date 29-April-2016
bogdanm 0:9b334a45a8ff 7 * @brief Header file of GPIO HAL Extension module.
bogdanm 0:9b334a45a8ff 8 ******************************************************************************
bogdanm 0:9b334a45a8ff 9 * @attention
bogdanm 0:9b334a45a8ff 10 *
mbed_official 124:6a4a5b7d7324 11 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
bogdanm 0:9b334a45a8ff 12 *
bogdanm 0:9b334a45a8ff 13 * Redistribution and use in source and binary forms, with or without modification,
bogdanm 0:9b334a45a8ff 14 * are permitted provided that the following conditions are met:
bogdanm 0:9b334a45a8ff 15 * 1. Redistributions of source code must retain the above copyright notice,
bogdanm 0:9b334a45a8ff 16 * this list of conditions and the following disclaimer.
bogdanm 0:9b334a45a8ff 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
bogdanm 0:9b334a45a8ff 18 * this list of conditions and the following disclaimer in the documentation
bogdanm 0:9b334a45a8ff 19 * and/or other materials provided with the distribution.
bogdanm 0:9b334a45a8ff 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
bogdanm 0:9b334a45a8ff 21 * may be used to endorse or promote products derived from this software
bogdanm 0:9b334a45a8ff 22 * without specific prior written permission.
bogdanm 0:9b334a45a8ff 23 *
bogdanm 0:9b334a45a8ff 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
bogdanm 0:9b334a45a8ff 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
bogdanm 0:9b334a45a8ff 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
bogdanm 0:9b334a45a8ff 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
bogdanm 0:9b334a45a8ff 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
bogdanm 0:9b334a45a8ff 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
bogdanm 0:9b334a45a8ff 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
bogdanm 0:9b334a45a8ff 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
bogdanm 0:9b334a45a8ff 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
bogdanm 0:9b334a45a8ff 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
bogdanm 0:9b334a45a8ff 34 *
bogdanm 0:9b334a45a8ff 35 ******************************************************************************
bogdanm 0:9b334a45a8ff 36 */
bogdanm 0:9b334a45a8ff 37
bogdanm 0:9b334a45a8ff 38 /* Define to prevent recursive inclusion -------------------------------------*/
bogdanm 0:9b334a45a8ff 39 #ifndef __STM32F1xx_HAL_GPIO_EX_H
bogdanm 0:9b334a45a8ff 40 #define __STM32F1xx_HAL_GPIO_EX_H
bogdanm 0:9b334a45a8ff 41
bogdanm 0:9b334a45a8ff 42 #ifdef __cplusplus
bogdanm 0:9b334a45a8ff 43 extern "C" {
bogdanm 0:9b334a45a8ff 44 #endif
bogdanm 0:9b334a45a8ff 45
bogdanm 0:9b334a45a8ff 46 /* Includes ------------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 47 #include "stm32f1xx_hal_def.h"
bogdanm 0:9b334a45a8ff 48
bogdanm 0:9b334a45a8ff 49 /** @addtogroup STM32F1xx_HAL_Driver
bogdanm 0:9b334a45a8ff 50 * @{
bogdanm 0:9b334a45a8ff 51 */
bogdanm 0:9b334a45a8ff 52
bogdanm 0:9b334a45a8ff 53 /** @defgroup GPIOEx GPIOEx
bogdanm 0:9b334a45a8ff 54 * @{
bogdanm 0:9b334a45a8ff 55 */
bogdanm 0:9b334a45a8ff 56
bogdanm 0:9b334a45a8ff 57 /* Exported types ------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 58
bogdanm 0:9b334a45a8ff 59 /* Exported constants --------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 60
bogdanm 0:9b334a45a8ff 61 /** @defgroup GPIOEx_Exported_Constants GPIOEx Exported Constants
bogdanm 0:9b334a45a8ff 62 * @{
bogdanm 0:9b334a45a8ff 63 */
bogdanm 0:9b334a45a8ff 64
bogdanm 0:9b334a45a8ff 65 /** @defgroup GPIOEx_EVENTOUT EVENTOUT Cortex Configuration
bogdanm 0:9b334a45a8ff 66 * @brief This section propose definition to use the Cortex EVENTOUT signal.
bogdanm 0:9b334a45a8ff 67 * @{
bogdanm 0:9b334a45a8ff 68 */
bogdanm 0:9b334a45a8ff 69
bogdanm 0:9b334a45a8ff 70 /** @defgroup GPIOEx_EVENTOUT_PIN EVENTOUT Pin
bogdanm 0:9b334a45a8ff 71 * @{
bogdanm 0:9b334a45a8ff 72 */
bogdanm 0:9b334a45a8ff 73
bogdanm 0:9b334a45a8ff 74 #define AFIO_EVENTOUT_PIN_0 AFIO_EVCR_PIN_PX0 /*!< EVENTOUT on pin 0 */
bogdanm 0:9b334a45a8ff 75 #define AFIO_EVENTOUT_PIN_1 AFIO_EVCR_PIN_PX1 /*!< EVENTOUT on pin 1 */
bogdanm 0:9b334a45a8ff 76 #define AFIO_EVENTOUT_PIN_2 AFIO_EVCR_PIN_PX2 /*!< EVENTOUT on pin 2 */
bogdanm 0:9b334a45a8ff 77 #define AFIO_EVENTOUT_PIN_3 AFIO_EVCR_PIN_PX3 /*!< EVENTOUT on pin 3 */
bogdanm 0:9b334a45a8ff 78 #define AFIO_EVENTOUT_PIN_4 AFIO_EVCR_PIN_PX4 /*!< EVENTOUT on pin 4 */
bogdanm 0:9b334a45a8ff 79 #define AFIO_EVENTOUT_PIN_5 AFIO_EVCR_PIN_PX5 /*!< EVENTOUT on pin 5 */
bogdanm 0:9b334a45a8ff 80 #define AFIO_EVENTOUT_PIN_6 AFIO_EVCR_PIN_PX6 /*!< EVENTOUT on pin 6 */
bogdanm 0:9b334a45a8ff 81 #define AFIO_EVENTOUT_PIN_7 AFIO_EVCR_PIN_PX7 /*!< EVENTOUT on pin 7 */
bogdanm 0:9b334a45a8ff 82 #define AFIO_EVENTOUT_PIN_8 AFIO_EVCR_PIN_PX8 /*!< EVENTOUT on pin 8 */
bogdanm 0:9b334a45a8ff 83 #define AFIO_EVENTOUT_PIN_9 AFIO_EVCR_PIN_PX9 /*!< EVENTOUT on pin 9 */
bogdanm 0:9b334a45a8ff 84 #define AFIO_EVENTOUT_PIN_10 AFIO_EVCR_PIN_PX10 /*!< EVENTOUT on pin 10 */
bogdanm 0:9b334a45a8ff 85 #define AFIO_EVENTOUT_PIN_11 AFIO_EVCR_PIN_PX11 /*!< EVENTOUT on pin 11 */
bogdanm 0:9b334a45a8ff 86 #define AFIO_EVENTOUT_PIN_12 AFIO_EVCR_PIN_PX12 /*!< EVENTOUT on pin 12 */
bogdanm 0:9b334a45a8ff 87 #define AFIO_EVENTOUT_PIN_13 AFIO_EVCR_PIN_PX13 /*!< EVENTOUT on pin 13 */
bogdanm 0:9b334a45a8ff 88 #define AFIO_EVENTOUT_PIN_14 AFIO_EVCR_PIN_PX14 /*!< EVENTOUT on pin 14 */
bogdanm 0:9b334a45a8ff 89 #define AFIO_EVENTOUT_PIN_15 AFIO_EVCR_PIN_PX15 /*!< EVENTOUT on pin 15 */
bogdanm 0:9b334a45a8ff 90
bogdanm 0:9b334a45a8ff 91 #define IS_AFIO_EVENTOUT_PIN(__PIN__) (((__PIN__) == AFIO_EVENTOUT_PIN_0) || \
bogdanm 0:9b334a45a8ff 92 ((__PIN__) == AFIO_EVENTOUT_PIN_1) || \
bogdanm 0:9b334a45a8ff 93 ((__PIN__) == AFIO_EVENTOUT_PIN_2) || \
bogdanm 0:9b334a45a8ff 94 ((__PIN__) == AFIO_EVENTOUT_PIN_3) || \
bogdanm 0:9b334a45a8ff 95 ((__PIN__) == AFIO_EVENTOUT_PIN_4) || \
bogdanm 0:9b334a45a8ff 96 ((__PIN__) == AFIO_EVENTOUT_PIN_5) || \
bogdanm 0:9b334a45a8ff 97 ((__PIN__) == AFIO_EVENTOUT_PIN_6) || \
bogdanm 0:9b334a45a8ff 98 ((__PIN__) == AFIO_EVENTOUT_PIN_7) || \
bogdanm 0:9b334a45a8ff 99 ((__PIN__) == AFIO_EVENTOUT_PIN_8) || \
bogdanm 0:9b334a45a8ff 100 ((__PIN__) == AFIO_EVENTOUT_PIN_9) || \
bogdanm 0:9b334a45a8ff 101 ((__PIN__) == AFIO_EVENTOUT_PIN_10) || \
bogdanm 0:9b334a45a8ff 102 ((__PIN__) == AFIO_EVENTOUT_PIN_11) || \
bogdanm 0:9b334a45a8ff 103 ((__PIN__) == AFIO_EVENTOUT_PIN_12) || \
bogdanm 0:9b334a45a8ff 104 ((__PIN__) == AFIO_EVENTOUT_PIN_13) || \
bogdanm 0:9b334a45a8ff 105 ((__PIN__) == AFIO_EVENTOUT_PIN_14) || \
bogdanm 0:9b334a45a8ff 106 ((__PIN__) == AFIO_EVENTOUT_PIN_15))
bogdanm 0:9b334a45a8ff 107 /**
bogdanm 0:9b334a45a8ff 108 * @}
bogdanm 0:9b334a45a8ff 109 */
bogdanm 0:9b334a45a8ff 110
bogdanm 0:9b334a45a8ff 111 /** @defgroup GPIOEx_EVENTOUT_PORT EVENTOUT Port
bogdanm 0:9b334a45a8ff 112 * @{
bogdanm 0:9b334a45a8ff 113 */
bogdanm 0:9b334a45a8ff 114
bogdanm 0:9b334a45a8ff 115 #define AFIO_EVENTOUT_PORT_A AFIO_EVCR_PORT_PA /*!< EVENTOUT on port A */
bogdanm 0:9b334a45a8ff 116 #define AFIO_EVENTOUT_PORT_B AFIO_EVCR_PORT_PB /*!< EVENTOUT on port B */
bogdanm 0:9b334a45a8ff 117 #define AFIO_EVENTOUT_PORT_C AFIO_EVCR_PORT_PC /*!< EVENTOUT on port C */
bogdanm 0:9b334a45a8ff 118 #define AFIO_EVENTOUT_PORT_D AFIO_EVCR_PORT_PD /*!< EVENTOUT on port D */
bogdanm 0:9b334a45a8ff 119 #define AFIO_EVENTOUT_PORT_E AFIO_EVCR_PORT_PE /*!< EVENTOUT on port E */
bogdanm 0:9b334a45a8ff 120
bogdanm 0:9b334a45a8ff 121 #define IS_AFIO_EVENTOUT_PORT(__PORT__) (((__PORT__) == AFIO_EVENTOUT_PORT_A) || \
bogdanm 0:9b334a45a8ff 122 ((__PORT__) == AFIO_EVENTOUT_PORT_B) || \
bogdanm 0:9b334a45a8ff 123 ((__PORT__) == AFIO_EVENTOUT_PORT_C) || \
bogdanm 0:9b334a45a8ff 124 ((__PORT__) == AFIO_EVENTOUT_PORT_D) || \
bogdanm 0:9b334a45a8ff 125 ((__PORT__) == AFIO_EVENTOUT_PORT_E))
bogdanm 0:9b334a45a8ff 126 /**
bogdanm 0:9b334a45a8ff 127 * @}
bogdanm 0:9b334a45a8ff 128 */
bogdanm 0:9b334a45a8ff 129
bogdanm 0:9b334a45a8ff 130 /**
bogdanm 0:9b334a45a8ff 131 * @}
bogdanm 0:9b334a45a8ff 132 */
bogdanm 0:9b334a45a8ff 133
bogdanm 0:9b334a45a8ff 134 /** @defgroup GPIOEx_AFIO_AF_REMAPPING Alternate Function Remapping
bogdanm 0:9b334a45a8ff 135 * @brief This section propose definition to remap the alternate function to some other port/pins.
bogdanm 0:9b334a45a8ff 136 * @{
bogdanm 0:9b334a45a8ff 137 */
bogdanm 0:9b334a45a8ff 138
bogdanm 0:9b334a45a8ff 139 /**
bogdanm 0:9b334a45a8ff 140 * @brief Enable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI.
bogdanm 0:9b334a45a8ff 141 * @note ENABLE: Remap (NSS/PA15, SCK/PB3, MISO/PB4, MOSI/PB5)
bogdanm 0:9b334a45a8ff 142 * @retval None
bogdanm 0:9b334a45a8ff 143 */
bogdanm 0:9b334a45a8ff 144 #define __HAL_AFIO_REMAP_SPI1_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_SPI1_REMAP)
bogdanm 0:9b334a45a8ff 145
bogdanm 0:9b334a45a8ff 146 /**
bogdanm 0:9b334a45a8ff 147 * @brief Disable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI.
bogdanm 0:9b334a45a8ff 148 * @note DISABLE: No remap (NSS/PA4, SCK/PA5, MISO/PA6, MOSI/PA7)
bogdanm 0:9b334a45a8ff 149 * @retval None
bogdanm 0:9b334a45a8ff 150 */
bogdanm 0:9b334a45a8ff 151 #define __HAL_AFIO_REMAP_SPI1_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_SPI1_REMAP)
bogdanm 0:9b334a45a8ff 152
bogdanm 0:9b334a45a8ff 153 /**
bogdanm 0:9b334a45a8ff 154 * @brief Enable the remapping of I2C1 alternate function SCL and SDA.
bogdanm 0:9b334a45a8ff 155 * @note ENABLE: Remap (SCL/PB8, SDA/PB9)
bogdanm 0:9b334a45a8ff 156 * @retval None
bogdanm 0:9b334a45a8ff 157 */
bogdanm 0:9b334a45a8ff 158 #define __HAL_AFIO_REMAP_I2C1_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_I2C1_REMAP)
bogdanm 0:9b334a45a8ff 159
bogdanm 0:9b334a45a8ff 160 /**
bogdanm 0:9b334a45a8ff 161 * @brief Disable the remapping of I2C1 alternate function SCL and SDA.
bogdanm 0:9b334a45a8ff 162 * @note DISABLE: No remap (SCL/PB6, SDA/PB7)
bogdanm 0:9b334a45a8ff 163 * @retval None
bogdanm 0:9b334a45a8ff 164 */
bogdanm 0:9b334a45a8ff 165 #define __HAL_AFIO_REMAP_I2C1_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_I2C1_REMAP)
bogdanm 0:9b334a45a8ff 166
bogdanm 0:9b334a45a8ff 167 /**
bogdanm 0:9b334a45a8ff 168 * @brief Enable the remapping of USART1 alternate function TX and RX.
bogdanm 0:9b334a45a8ff 169 * @note ENABLE: Remap (TX/PB6, RX/PB7)
bogdanm 0:9b334a45a8ff 170 * @retval None
bogdanm 0:9b334a45a8ff 171 */
bogdanm 0:9b334a45a8ff 172 #define __HAL_AFIO_REMAP_USART1_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_USART1_REMAP)
bogdanm 0:9b334a45a8ff 173
bogdanm 0:9b334a45a8ff 174 /**
bogdanm 0:9b334a45a8ff 175 * @brief Disable the remapping of USART1 alternate function TX and RX.
bogdanm 0:9b334a45a8ff 176 * @note DISABLE: No remap (TX/PA9, RX/PA10)
bogdanm 0:9b334a45a8ff 177 * @retval None
bogdanm 0:9b334a45a8ff 178 */
bogdanm 0:9b334a45a8ff 179 #define __HAL_AFIO_REMAP_USART1_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART1_REMAP)
bogdanm 0:9b334a45a8ff 180
bogdanm 0:9b334a45a8ff 181 /**
bogdanm 0:9b334a45a8ff 182 * @brief Enable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX.
bogdanm 0:9b334a45a8ff 183 * @note ENABLE: Remap (CTS/PD3, RTS/PD4, TX/PD5, RX/PD6, CK/PD7)
bogdanm 0:9b334a45a8ff 184 * @retval None
bogdanm 0:9b334a45a8ff 185 */
bogdanm 0:9b334a45a8ff 186 #define __HAL_AFIO_REMAP_USART2_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_USART2_REMAP)
bogdanm 0:9b334a45a8ff 187
bogdanm 0:9b334a45a8ff 188 /**
bogdanm 0:9b334a45a8ff 189 * @brief Disable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX.
bogdanm 0:9b334a45a8ff 190 * @note DISABLE: No remap (CTS/PA0, RTS/PA1, TX/PA2, RX/PA3, CK/PA4)
bogdanm 0:9b334a45a8ff 191 * @retval None
bogdanm 0:9b334a45a8ff 192 */
bogdanm 0:9b334a45a8ff 193 #define __HAL_AFIO_REMAP_USART2_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART2_REMAP)
bogdanm 0:9b334a45a8ff 194
bogdanm 0:9b334a45a8ff 195 /**
bogdanm 0:9b334a45a8ff 196 * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX.
bogdanm 0:9b334a45a8ff 197 * @note ENABLE: Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12)
bogdanm 0:9b334a45a8ff 198 * @retval None
bogdanm 0:9b334a45a8ff 199 */
bogdanm 0:9b334a45a8ff 200 #define __HAL_AFIO_REMAP_USART3_ENABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_USART3_REMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP)
bogdanm 0:9b334a45a8ff 201
bogdanm 0:9b334a45a8ff 202 /**
bogdanm 0:9b334a45a8ff 203 * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX.
bogdanm 0:9b334a45a8ff 204 * @note PARTIAL: Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14)
bogdanm 0:9b334a45a8ff 205 * @retval None
bogdanm 0:9b334a45a8ff 206 */
bogdanm 0:9b334a45a8ff 207 #define __HAL_AFIO_REMAP_USART3_PARTIAL() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_USART3_REMAP, AFIO_MAPR_USART3_REMAP_PARTIALREMAP)
bogdanm 0:9b334a45a8ff 208
bogdanm 0:9b334a45a8ff 209 /**
bogdanm 0:9b334a45a8ff 210 * @brief Disable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX.
bogdanm 0:9b334a45a8ff 211 * @note DISABLE: No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14)
bogdanm 0:9b334a45a8ff 212 * @retval None
bogdanm 0:9b334a45a8ff 213 */
bogdanm 0:9b334a45a8ff 214 #define __HAL_AFIO_REMAP_USART3_DISABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_USART3_REMAP, AFIO_MAPR_USART3_REMAP_NOREMAP)
bogdanm 0:9b334a45a8ff 215
bogdanm 0:9b334a45a8ff 216 /**
bogdanm 0:9b334a45a8ff 217 * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN)
bogdanm 0:9b334a45a8ff 218 * @note ENABLE: Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12)
bogdanm 0:9b334a45a8ff 219 * @retval None
bogdanm 0:9b334a45a8ff 220 */
bogdanm 0:9b334a45a8ff 221 #define __HAL_AFIO_REMAP_TIM1_ENABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP)
bogdanm 0:9b334a45a8ff 222
bogdanm 0:9b334a45a8ff 223 /**
bogdanm 0:9b334a45a8ff 224 * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN)
bogdanm 0:9b334a45a8ff 225 * @note PARTIAL: Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1)
bogdanm 0:9b334a45a8ff 226 * @retval None
bogdanm 0:9b334a45a8ff 227 */
bogdanm 0:9b334a45a8ff 228 #define __HAL_AFIO_REMAP_TIM1_PARTIAL() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP, AFIO_MAPR_TIM1_REMAP_PARTIALREMAP)
bogdanm 0:9b334a45a8ff 229
bogdanm 0:9b334a45a8ff 230 /**
bogdanm 0:9b334a45a8ff 231 * @brief Disable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN)
bogdanm 0:9b334a45a8ff 232 * @note DISABLE: No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15)
bogdanm 0:9b334a45a8ff 233 * @retval None
bogdanm 0:9b334a45a8ff 234 */
bogdanm 0:9b334a45a8ff 235 #define __HAL_AFIO_REMAP_TIM1_DISABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP, AFIO_MAPR_TIM1_REMAP_NOREMAP)
bogdanm 0:9b334a45a8ff 236
bogdanm 0:9b334a45a8ff 237 /**
bogdanm 0:9b334a45a8ff 238 * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR)
bogdanm 0:9b334a45a8ff 239 * @note ENABLE: Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11)
bogdanm 0:9b334a45a8ff 240 * @retval None
bogdanm 0:9b334a45a8ff 241 */
bogdanm 0:9b334a45a8ff 242 #define __HAL_AFIO_REMAP_TIM2_ENABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP, AFIO_MAPR_TIM2_REMAP_FULLREMAP)
bogdanm 0:9b334a45a8ff 243
bogdanm 0:9b334a45a8ff 244 /**
bogdanm 0:9b334a45a8ff 245 * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR)
bogdanm 0:9b334a45a8ff 246 * @note PARTIAL_2: Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11)
bogdanm 0:9b334a45a8ff 247 * @retval None
bogdanm 0:9b334a45a8ff 248 */
bogdanm 0:9b334a45a8ff 249 #define __HAL_AFIO_REMAP_TIM2_PARTIAL_2() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP, AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2)
bogdanm 0:9b334a45a8ff 250
bogdanm 0:9b334a45a8ff 251 /**
bogdanm 0:9b334a45a8ff 252 * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR)
bogdanm 0:9b334a45a8ff 253 * @note PARTIAL_1: Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3)
bogdanm 0:9b334a45a8ff 254 * @retval None
bogdanm 0:9b334a45a8ff 255 */
bogdanm 0:9b334a45a8ff 256 #define __HAL_AFIO_REMAP_TIM2_PARTIAL_1() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP, AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1)
bogdanm 0:9b334a45a8ff 257
bogdanm 0:9b334a45a8ff 258 /**
bogdanm 0:9b334a45a8ff 259 * @brief Disable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR)
bogdanm 0:9b334a45a8ff 260 * @note DISABLE: No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3)
bogdanm 0:9b334a45a8ff 261 * @retval None
bogdanm 0:9b334a45a8ff 262 */
bogdanm 0:9b334a45a8ff 263 #define __HAL_AFIO_REMAP_TIM2_DISABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP, AFIO_MAPR_TIM2_REMAP_NOREMAP)
bogdanm 0:9b334a45a8ff 264
bogdanm 0:9b334a45a8ff 265 /**
bogdanm 0:9b334a45a8ff 266 * @brief Enable the remapping of TIM3 alternate function channels 1 to 4
bogdanm 0:9b334a45a8ff 267 * @note ENABLE: Full remap (CH1/PC6, CH2/PC7, CH3/PC8, CH4/PC9)
bogdanm 0:9b334a45a8ff 268 * @note TIM3_ETR on PE0 is not re-mapped.
bogdanm 0:9b334a45a8ff 269 * @retval None
bogdanm 0:9b334a45a8ff 270 */
bogdanm 0:9b334a45a8ff 271 #define __HAL_AFIO_REMAP_TIM3_ENABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP)
bogdanm 0:9b334a45a8ff 272
bogdanm 0:9b334a45a8ff 273 /**
bogdanm 0:9b334a45a8ff 274 * @brief Enable the remapping of TIM3 alternate function channels 1 to 4
bogdanm 0:9b334a45a8ff 275 * @note PARTIAL: Partial remap (CH1/PB4, CH2/PB5, CH3/PB0, CH4/PB1)
bogdanm 0:9b334a45a8ff 276 * @note TIM3_ETR on PE0 is not re-mapped.
bogdanm 0:9b334a45a8ff 277 * @retval None
bogdanm 0:9b334a45a8ff 278 */
bogdanm 0:9b334a45a8ff 279 #define __HAL_AFIO_REMAP_TIM3_PARTIAL() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP, AFIO_MAPR_TIM3_REMAP_PARTIALREMAP)
bogdanm 0:9b334a45a8ff 280
bogdanm 0:9b334a45a8ff 281 /**
bogdanm 0:9b334a45a8ff 282 * @brief Disable the remapping of TIM3 alternate function channels 1 to 4
bogdanm 0:9b334a45a8ff 283 * @note DISABLE: No remap (CH1/PA6, CH2/PA7, CH3/PB0, CH4/PB1)
bogdanm 0:9b334a45a8ff 284 * @note TIM3_ETR on PE0 is not re-mapped.
bogdanm 0:9b334a45a8ff 285 * @retval None
bogdanm 0:9b334a45a8ff 286 */
bogdanm 0:9b334a45a8ff 287 #define __HAL_AFIO_REMAP_TIM3_DISABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP, AFIO_MAPR_TIM3_REMAP_NOREMAP)
bogdanm 0:9b334a45a8ff 288
bogdanm 0:9b334a45a8ff 289 /**
bogdanm 0:9b334a45a8ff 290 * @brief Enable the remapping of TIM4 alternate function channels 1 to 4.
bogdanm 0:9b334a45a8ff 291 * @note ENABLE: Full remap (TIM4_CH1/PD12, TIM4_CH2/PD13, TIM4_CH3/PD14, TIM4_CH4/PD15)
bogdanm 0:9b334a45a8ff 292 * @note TIM4_ETR on PE0 is not re-mapped.
bogdanm 0:9b334a45a8ff 293 * @retval None
bogdanm 0:9b334a45a8ff 294 */
bogdanm 0:9b334a45a8ff 295 #define __HAL_AFIO_REMAP_TIM4_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM4_REMAP)
bogdanm 0:9b334a45a8ff 296
bogdanm 0:9b334a45a8ff 297 /**
bogdanm 0:9b334a45a8ff 298 * @brief Disable the remapping of TIM4 alternate function channels 1 to 4.
bogdanm 0:9b334a45a8ff 299 * @note DISABLE: No remap (TIM4_CH1/PB6, TIM4_CH2/PB7, TIM4_CH3/PB8, TIM4_CH4/PB9)
bogdanm 0:9b334a45a8ff 300 * @note TIM4_ETR on PE0 is not re-mapped.
bogdanm 0:9b334a45a8ff 301 * @retval None
bogdanm 0:9b334a45a8ff 302 */
bogdanm 0:9b334a45a8ff 303 #define __HAL_AFIO_REMAP_TIM4_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM4_REMAP)
bogdanm 0:9b334a45a8ff 304
bogdanm 0:9b334a45a8ff 305 #if defined(AFIO_MAPR_CAN_REMAP_REMAP1)
bogdanm 0:9b334a45a8ff 306
bogdanm 0:9b334a45a8ff 307 /**
bogdanm 0:9b334a45a8ff 308 * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface.
bogdanm 0:9b334a45a8ff 309 * @note CASE 1: CAN_RX mapped to PA11, CAN_TX mapped to PA12
bogdanm 0:9b334a45a8ff 310 * @retval None
bogdanm 0:9b334a45a8ff 311 */
bogdanm 0:9b334a45a8ff 312 #define __HAL_AFIO_REMAP_CAN1_1() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_CAN_REMAP, AFIO_MAPR_CAN_REMAP_REMAP1)
bogdanm 0:9b334a45a8ff 313
bogdanm 0:9b334a45a8ff 314 /**
bogdanm 0:9b334a45a8ff 315 * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface.
bogdanm 0:9b334a45a8ff 316 * @note CASE 2: CAN_RX mapped to PB8, CAN_TX mapped to PB9 (not available on 36-pin package)
bogdanm 0:9b334a45a8ff 317 * @retval None
bogdanm 0:9b334a45a8ff 318 */
bogdanm 0:9b334a45a8ff 319 #define __HAL_AFIO_REMAP_CAN1_2() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_CAN_REMAP, AFIO_MAPR_CAN_REMAP_REMAP2)
bogdanm 0:9b334a45a8ff 320
bogdanm 0:9b334a45a8ff 321 /**
bogdanm 0:9b334a45a8ff 322 * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface.
bogdanm 0:9b334a45a8ff 323 * @note CASE 3: CAN_RX mapped to PD0, CAN_TX mapped to PD1
bogdanm 0:9b334a45a8ff 324 * @retval None
bogdanm 0:9b334a45a8ff 325 */
bogdanm 0:9b334a45a8ff 326 #define __HAL_AFIO_REMAP_CAN1_3() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_CAN_REMAP, AFIO_MAPR_CAN_REMAP_REMAP3)
bogdanm 0:9b334a45a8ff 327 #endif
bogdanm 0:9b334a45a8ff 328
bogdanm 0:9b334a45a8ff 329 /**
bogdanm 0:9b334a45a8ff 330 * @brief Enable the remapping of PD0 and PD1. When the HSE oscillator is not used
bogdanm 0:9b334a45a8ff 331 * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and
bogdanm 0:9b334a45a8ff 332 * OSC_OUT. This is available only on 36, 48 and 64 pins packages (PD0 and PD1 are available
bogdanm 0:9b334a45a8ff 333 * on 100-pin and 144-pin packages, no need for remapping).
bogdanm 0:9b334a45a8ff 334 * @note ENABLE: PD0 remapped on OSC_IN, PD1 remapped on OSC_OUT.
bogdanm 0:9b334a45a8ff 335 * @retval None
bogdanm 0:9b334a45a8ff 336 */
bogdanm 0:9b334a45a8ff 337 #define __HAL_AFIO_REMAP_PD01_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_PD01_REMAP)
bogdanm 0:9b334a45a8ff 338
bogdanm 0:9b334a45a8ff 339 /**
bogdanm 0:9b334a45a8ff 340 * @brief Disable the remapping of PD0 and PD1. When the HSE oscillator is not used
bogdanm 0:9b334a45a8ff 341 * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and
bogdanm 0:9b334a45a8ff 342 * OSC_OUT. This is available only on 36, 48 and 64 pins packages (PD0 and PD1 are available
bogdanm 0:9b334a45a8ff 343 * on 100-pin and 144-pin packages, no need for remapping).
bogdanm 0:9b334a45a8ff 344 * @note DISABLE: No remapping of PD0 and PD1
bogdanm 0:9b334a45a8ff 345 * @retval None
bogdanm 0:9b334a45a8ff 346 */
bogdanm 0:9b334a45a8ff 347 #define __HAL_AFIO_REMAP_PD01_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_PD01_REMAP)
bogdanm 0:9b334a45a8ff 348
bogdanm 0:9b334a45a8ff 349 #if defined(AFIO_MAPR_TIM5CH4_IREMAP)
bogdanm 0:9b334a45a8ff 350 /**
bogdanm 0:9b334a45a8ff 351 * @brief Enable the remapping of TIM5CH4.
bogdanm 0:9b334a45a8ff 352 * @note ENABLE: LSI internal clock is connected to TIM5_CH4 input for calibration purpose.
bogdanm 0:9b334a45a8ff 353 * @note This function is available only in high density value line devices.
bogdanm 0:9b334a45a8ff 354 * @retval None
bogdanm 0:9b334a45a8ff 355 */
bogdanm 0:9b334a45a8ff 356 #define __HAL_AFIO_REMAP_TIM5CH4_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM5CH4_IREMAP)
bogdanm 0:9b334a45a8ff 357
bogdanm 0:9b334a45a8ff 358 /**
bogdanm 0:9b334a45a8ff 359 * @brief Disable the remapping of TIM5CH4.
bogdanm 0:9b334a45a8ff 360 * @note DISABLE: TIM5_CH4 is connected to PA3
bogdanm 0:9b334a45a8ff 361 * @note This function is available only in high density value line devices.
bogdanm 0:9b334a45a8ff 362 * @retval None
bogdanm 0:9b334a45a8ff 363 */
bogdanm 0:9b334a45a8ff 364 #define __HAL_AFIO_REMAP_TIM5CH4_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM5CH4_IREMAP)
bogdanm 0:9b334a45a8ff 365 #endif
bogdanm 0:9b334a45a8ff 366
bogdanm 0:9b334a45a8ff 367 #if defined(AFIO_MAPR_ETH_REMAP)
bogdanm 0:9b334a45a8ff 368 /**
bogdanm 0:9b334a45a8ff 369 * @brief Enable the remapping of Ethernet MAC connections with the PHY.
bogdanm 0:9b334a45a8ff 370 * @note ENABLE: Remap (RX_DV-CRS_DV/PD8, RXD0/PD9, RXD1/PD10, RXD2/PD11, RXD3/PD12)
bogdanm 0:9b334a45a8ff 371 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 372 * @retval None
bogdanm 0:9b334a45a8ff 373 */
bogdanm 0:9b334a45a8ff 374 #define __HAL_AFIO_REMAP_ETH_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_ETH_REMAP)
bogdanm 0:9b334a45a8ff 375
bogdanm 0:9b334a45a8ff 376 /**
bogdanm 0:9b334a45a8ff 377 * @brief Disable the remapping of Ethernet MAC connections with the PHY.
bogdanm 0:9b334a45a8ff 378 * @note DISABLE: No remap (RX_DV-CRS_DV/PA7, RXD0/PC4, RXD1/PC5, RXD2/PB0, RXD3/PB1)
bogdanm 0:9b334a45a8ff 379 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 380 * @retval None
bogdanm 0:9b334a45a8ff 381 */
bogdanm 0:9b334a45a8ff 382 #define __HAL_AFIO_REMAP_ETH_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ETH_REMAP)
bogdanm 0:9b334a45a8ff 383 #endif
bogdanm 0:9b334a45a8ff 384
bogdanm 0:9b334a45a8ff 385 #if defined(AFIO_MAPR_CAN2_REMAP)
bogdanm 0:9b334a45a8ff 386
bogdanm 0:9b334a45a8ff 387 /**
bogdanm 0:9b334a45a8ff 388 * @brief Enable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX.
bogdanm 0:9b334a45a8ff 389 * @note ENABLE: Remap (CAN2_RX/PB5, CAN2_TX/PB6)
bogdanm 0:9b334a45a8ff 390 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 391 * @retval None
bogdanm 0:9b334a45a8ff 392 */
bogdanm 0:9b334a45a8ff 393 #define __HAL_AFIO_REMAP_CAN2_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_CAN2_REMAP)
bogdanm 0:9b334a45a8ff 394
bogdanm 0:9b334a45a8ff 395 /**
bogdanm 0:9b334a45a8ff 396 * @brief Disable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX.
bogdanm 0:9b334a45a8ff 397 * @note DISABLE: No remap (CAN2_RX/PB12, CAN2_TX/PB13)
bogdanm 0:9b334a45a8ff 398 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 399 * @retval None
bogdanm 0:9b334a45a8ff 400 */
bogdanm 0:9b334a45a8ff 401 #define __HAL_AFIO_REMAP_CAN2_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_CAN2_REMAP)
bogdanm 0:9b334a45a8ff 402 #endif
bogdanm 0:9b334a45a8ff 403
bogdanm 0:9b334a45a8ff 404 #if defined(AFIO_MAPR_MII_RMII_SEL)
bogdanm 0:9b334a45a8ff 405 /**
bogdanm 0:9b334a45a8ff 406 * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY.
bogdanm 0:9b334a45a8ff 407 * @note ETH_RMII: Configure Ethernet MAC for connection with an RMII PHY
bogdanm 0:9b334a45a8ff 408 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 409 * @retval None
bogdanm 0:9b334a45a8ff 410 */
bogdanm 0:9b334a45a8ff 411 #define __HAL_AFIO_ETH_RMII() SET_BIT(AFIO->MAPR, AFIO_MAPR_MII_RMII_SEL)
bogdanm 0:9b334a45a8ff 412
bogdanm 0:9b334a45a8ff 413 /**
bogdanm 0:9b334a45a8ff 414 * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY.
bogdanm 0:9b334a45a8ff 415 * @note ETH_MII: Configure Ethernet MAC for connection with an MII PHY
bogdanm 0:9b334a45a8ff 416 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 417 * @retval None
bogdanm 0:9b334a45a8ff 418 */
bogdanm 0:9b334a45a8ff 419 #define __HAL_AFIO_ETH_MII() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_MII_RMII_SEL)
bogdanm 0:9b334a45a8ff 420 #endif
bogdanm 0:9b334a45a8ff 421
bogdanm 0:9b334a45a8ff 422 /**
bogdanm 0:9b334a45a8ff 423 * @brief Enable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion).
bogdanm 0:9b334a45a8ff 424 * @note ENABLE: ADC1 External Event injected conversion is connected to TIM8 Channel4.
bogdanm 0:9b334a45a8ff 425 * @retval None
bogdanm 0:9b334a45a8ff 426 */
bogdanm 0:9b334a45a8ff 427 #define __HAL_AFIO_REMAP_ADC1_ETRGINJ_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGINJ_REMAP)
bogdanm 0:9b334a45a8ff 428
bogdanm 0:9b334a45a8ff 429 /**
bogdanm 0:9b334a45a8ff 430 * @brief Disable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion).
bogdanm 0:9b334a45a8ff 431 * @note DISABLE: ADC1 External trigger injected conversion is connected to EXTI15
bogdanm 0:9b334a45a8ff 432 * @retval None
bogdanm 0:9b334a45a8ff 433 */
bogdanm 0:9b334a45a8ff 434 #define __HAL_AFIO_REMAP_ADC1_ETRGINJ_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGINJ_REMAP)
bogdanm 0:9b334a45a8ff 435
bogdanm 0:9b334a45a8ff 436 /**
bogdanm 0:9b334a45a8ff 437 * @brief Enable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion).
bogdanm 0:9b334a45a8ff 438 * @note ENABLE: ADC1 External Event regular conversion is connected to TIM8 TRG0.
bogdanm 0:9b334a45a8ff 439 * @retval None
bogdanm 0:9b334a45a8ff 440 */
bogdanm 0:9b334a45a8ff 441 #define __HAL_AFIO_REMAP_ADC1_ETRGREG_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGREG_REMAP)
bogdanm 0:9b334a45a8ff 442
bogdanm 0:9b334a45a8ff 443 /**
bogdanm 0:9b334a45a8ff 444 * @brief Disable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion).
bogdanm 0:9b334a45a8ff 445 * @note DISABLE: ADC1 External trigger regular conversion is connected to EXTI11
bogdanm 0:9b334a45a8ff 446 * @retval None
bogdanm 0:9b334a45a8ff 447 */
bogdanm 0:9b334a45a8ff 448 #define __HAL_AFIO_REMAP_ADC1_ETRGREG_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGREG_REMAP)
bogdanm 0:9b334a45a8ff 449
bogdanm 0:9b334a45a8ff 450 #if defined(AFIO_MAPR_ADC2_ETRGINJ_REMAP)
bogdanm 0:9b334a45a8ff 451
bogdanm 0:9b334a45a8ff 452 /**
bogdanm 0:9b334a45a8ff 453 * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion).
bogdanm 0:9b334a45a8ff 454 * @note ENABLE: ADC2 External Event injected conversion is connected to TIM8 Channel4.
bogdanm 0:9b334a45a8ff 455 * @retval None
bogdanm 0:9b334a45a8ff 456 */
bogdanm 0:9b334a45a8ff 457 #define __HAL_AFIO_REMAP_ADC2_ETRGINJ_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGINJ_REMAP)
bogdanm 0:9b334a45a8ff 458
bogdanm 0:9b334a45a8ff 459 /**
bogdanm 0:9b334a45a8ff 460 * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion).
bogdanm 0:9b334a45a8ff 461 * @note DISABLE: ADC2 External trigger injected conversion is connected to EXTI15
bogdanm 0:9b334a45a8ff 462 * @retval None
bogdanm 0:9b334a45a8ff 463 */
bogdanm 0:9b334a45a8ff 464 #define __HAL_AFIO_REMAP_ADC2_ETRGINJ_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGINJ_REMAP)
bogdanm 0:9b334a45a8ff 465 #endif
bogdanm 0:9b334a45a8ff 466
bogdanm 0:9b334a45a8ff 467 #if defined (AFIO_MAPR_ADC2_ETRGREG_REMAP)
bogdanm 0:9b334a45a8ff 468
bogdanm 0:9b334a45a8ff 469 /**
bogdanm 0:9b334a45a8ff 470 * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion).
bogdanm 0:9b334a45a8ff 471 * @note ENABLE: ADC2 External Event regular conversion is connected to TIM8 TRG0.
bogdanm 0:9b334a45a8ff 472 * @retval None
bogdanm 0:9b334a45a8ff 473 */
bogdanm 0:9b334a45a8ff 474 #define __HAL_AFIO_REMAP_ADC2_ETRGREG_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGREG_REMAP)
bogdanm 0:9b334a45a8ff 475
bogdanm 0:9b334a45a8ff 476 /**
bogdanm 0:9b334a45a8ff 477 * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion).
bogdanm 0:9b334a45a8ff 478 * @note DISABLE: ADC2 External trigger regular conversion is connected to EXTI11
bogdanm 0:9b334a45a8ff 479 * @retval None
bogdanm 0:9b334a45a8ff 480 */
bogdanm 0:9b334a45a8ff 481 #define __HAL_AFIO_REMAP_ADC2_ETRGREG_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGREG_REMAP)
bogdanm 0:9b334a45a8ff 482 #endif
bogdanm 0:9b334a45a8ff 483
bogdanm 0:9b334a45a8ff 484 /**
bogdanm 0:9b334a45a8ff 485 * @brief Enable the Serial wire JTAG configuration
bogdanm 0:9b334a45a8ff 486 * @note ENABLE: Full SWJ (JTAG-DP + SW-DP): Reset State
bogdanm 0:9b334a45a8ff 487 * @retval None
bogdanm 0:9b334a45a8ff 488 */
bogdanm 0:9b334a45a8ff 489 #define __HAL_AFIO_REMAP_SWJ_ENABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_SWJ_CFG, AFIO_MAPR_SWJ_CFG_RESET)
bogdanm 0:9b334a45a8ff 490
bogdanm 0:9b334a45a8ff 491 /**
bogdanm 0:9b334a45a8ff 492 * @brief Enable the Serial wire JTAG configuration
bogdanm 0:9b334a45a8ff 493 * @note NONJTRST: Full SWJ (JTAG-DP + SW-DP) but without NJTRST
bogdanm 0:9b334a45a8ff 494 * @retval None
bogdanm 0:9b334a45a8ff 495 */
bogdanm 0:9b334a45a8ff 496 #define __HAL_AFIO_REMAP_SWJ_NONJTRST() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_SWJ_CFG, AFIO_MAPR_SWJ_CFG_NOJNTRST)
bogdanm 0:9b334a45a8ff 497
bogdanm 0:9b334a45a8ff 498 /**
bogdanm 0:9b334a45a8ff 499 * @brief Enable the Serial wire JTAG configuration
bogdanm 0:9b334a45a8ff 500 * @note NOJTAG: JTAG-DP Disabled and SW-DP Enabled
bogdanm 0:9b334a45a8ff 501 * @retval None
bogdanm 0:9b334a45a8ff 502 */
bogdanm 0:9b334a45a8ff 503 #define __HAL_AFIO_REMAP_SWJ_NOJTAG() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_SWJ_CFG, AFIO_MAPR_SWJ_CFG_JTAGDISABLE)
bogdanm 0:9b334a45a8ff 504
bogdanm 0:9b334a45a8ff 505 /**
bogdanm 0:9b334a45a8ff 506 * @brief Disable the Serial wire JTAG configuration
bogdanm 0:9b334a45a8ff 507 * @note DISABLE: JTAG-DP Disabled and SW-DP Disabled
bogdanm 0:9b334a45a8ff 508 * @retval None
bogdanm 0:9b334a45a8ff 509 */
bogdanm 0:9b334a45a8ff 510 #define __HAL_AFIO_REMAP_SWJ_DISABLE() MODIFY_REG(AFIO->MAPR, AFIO_MAPR_SWJ_CFG, AFIO_MAPR_SWJ_CFG_DISABLE)
bogdanm 0:9b334a45a8ff 511
bogdanm 0:9b334a45a8ff 512 #if defined(AFIO_MAPR_SPI3_REMAP)
bogdanm 0:9b334a45a8ff 513
bogdanm 0:9b334a45a8ff 514 /**
bogdanm 0:9b334a45a8ff 515 * @brief Enable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD.
bogdanm 0:9b334a45a8ff 516 * @note ENABLE: Remap (SPI3_NSS-I2S3_WS/PA4, SPI3_SCK-I2S3_CK/PC10, SPI3_MISO/PC11, SPI3_MOSI-I2S3_SD/PC12)
bogdanm 0:9b334a45a8ff 517 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 518 * @retval None
bogdanm 0:9b334a45a8ff 519 */
bogdanm 0:9b334a45a8ff 520 #define __HAL_AFIO_REMAP_SPI3_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_SPI3_REMAP)
bogdanm 0:9b334a45a8ff 521
bogdanm 0:9b334a45a8ff 522 /**
bogdanm 0:9b334a45a8ff 523 * @brief Disable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD.
bogdanm 0:9b334a45a8ff 524 * @note DISABLE: No remap (SPI3_NSS-I2S3_WS/PA15, SPI3_SCK-I2S3_CK/PB3, SPI3_MISO/PB4, SPI3_MOSI-I2S3_SD/PB5).
bogdanm 0:9b334a45a8ff 525 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 526 * @retval None
bogdanm 0:9b334a45a8ff 527 */
bogdanm 0:9b334a45a8ff 528 #define __HAL_AFIO_REMAP_SPI3_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_SPI3_REMAP)
bogdanm 0:9b334a45a8ff 529 #endif
bogdanm 0:9b334a45a8ff 530
bogdanm 0:9b334a45a8ff 531 #if defined(AFIO_MAPR_TIM2ITR1_IREMAP)
bogdanm 0:9b334a45a8ff 532
bogdanm 0:9b334a45a8ff 533 /**
bogdanm 0:9b334a45a8ff 534 * @brief Control of TIM2_ITR1 internal mapping.
bogdanm 0:9b334a45a8ff 535 * @note TO_USB: Connect USB OTG SOF (Start of Frame) output to TIM2_ITR1 for calibration purposes.
bogdanm 0:9b334a45a8ff 536 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 537 * @retval None
bogdanm 0:9b334a45a8ff 538 */
bogdanm 0:9b334a45a8ff 539 #define __HAL_AFIO_TIM2ITR1_TO_USB() SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2ITR1_IREMAP)
bogdanm 0:9b334a45a8ff 540
bogdanm 0:9b334a45a8ff 541 /**
bogdanm 0:9b334a45a8ff 542 * @brief Control of TIM2_ITR1 internal mapping.
bogdanm 0:9b334a45a8ff 543 * @note TO_ETH: Connect TIM2_ITR1 internally to the Ethernet PTP output for calibration purposes.
bogdanm 0:9b334a45a8ff 544 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 545 * @retval None
bogdanm 0:9b334a45a8ff 546 */
bogdanm 0:9b334a45a8ff 547 #define __HAL_AFIO_TIM2ITR1_TO_ETH() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM2ITR1_IREMAP)
bogdanm 0:9b334a45a8ff 548 #endif
bogdanm 0:9b334a45a8ff 549
bogdanm 0:9b334a45a8ff 550 #if defined(AFIO_MAPR_PTP_PPS_REMAP)
bogdanm 0:9b334a45a8ff 551
bogdanm 0:9b334a45a8ff 552 /**
bogdanm 0:9b334a45a8ff 553 * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion).
bogdanm 0:9b334a45a8ff 554 * @note ENABLE: PTP_PPS is output on PB5 pin.
bogdanm 0:9b334a45a8ff 555 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 556 * @retval None
bogdanm 0:9b334a45a8ff 557 */
bogdanm 0:9b334a45a8ff 558 #define __HAL_AFIO_ETH_PTP_PPS_ENABLE() SET_BIT(AFIO->MAPR, AFIO_MAPR_PTP_PPS_REMAP)
bogdanm 0:9b334a45a8ff 559
bogdanm 0:9b334a45a8ff 560 /**
bogdanm 0:9b334a45a8ff 561 * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion).
bogdanm 0:9b334a45a8ff 562 * @note DISABLE: PTP_PPS not output on PB5 pin.
bogdanm 0:9b334a45a8ff 563 * @note This bit is available only in connectivity line devices and is reserved otherwise.
bogdanm 0:9b334a45a8ff 564 * @retval None
bogdanm 0:9b334a45a8ff 565 */
bogdanm 0:9b334a45a8ff 566 #define __HAL_AFIO_ETH_PTP_PPS_DISABLE() CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_PTP_PPS_REMAP)
bogdanm 0:9b334a45a8ff 567 #endif
bogdanm 0:9b334a45a8ff 568
bogdanm 0:9b334a45a8ff 569 #if defined(AFIO_MAPR2_TIM9_REMAP)
bogdanm 0:9b334a45a8ff 570
bogdanm 0:9b334a45a8ff 571 /**
bogdanm 0:9b334a45a8ff 572 * @brief Enable the remapping of TIM9_CH1 and TIM9_CH2.
bogdanm 0:9b334a45a8ff 573 * @note ENABLE: Remap (TIM9_CH1 on PE5 and TIM9_CH2 on PE6).
bogdanm 0:9b334a45a8ff 574 * @retval None
bogdanm 0:9b334a45a8ff 575 */
bogdanm 0:9b334a45a8ff 576 #define __HAL_AFIO_REMAP_TIM9_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM9_REMAP)
bogdanm 0:9b334a45a8ff 577
bogdanm 0:9b334a45a8ff 578 /**
bogdanm 0:9b334a45a8ff 579 * @brief Disable the remapping of TIM9_CH1 and TIM9_CH2.
bogdanm 0:9b334a45a8ff 580 * @note DISABLE: No remap (TIM9_CH1 on PA2 and TIM9_CH2 on PA3).
bogdanm 0:9b334a45a8ff 581 * @retval None
bogdanm 0:9b334a45a8ff 582 */
bogdanm 0:9b334a45a8ff 583 #define __HAL_AFIO_REMAP_TIM9_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM9_REMAP)
bogdanm 0:9b334a45a8ff 584 #endif
bogdanm 0:9b334a45a8ff 585
bogdanm 0:9b334a45a8ff 586 #if defined(AFIO_MAPR2_TIM10_REMAP)
bogdanm 0:9b334a45a8ff 587
bogdanm 0:9b334a45a8ff 588 /**
bogdanm 0:9b334a45a8ff 589 * @brief Enable the remapping of TIM10_CH1.
bogdanm 0:9b334a45a8ff 590 * @note ENABLE: Remap (TIM10_CH1 on PF6).
bogdanm 0:9b334a45a8ff 591 * @retval None
bogdanm 0:9b334a45a8ff 592 */
bogdanm 0:9b334a45a8ff 593 #define __HAL_AFIO_REMAP_TIM10_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM10_REMAP)
bogdanm 0:9b334a45a8ff 594
bogdanm 0:9b334a45a8ff 595 /**
bogdanm 0:9b334a45a8ff 596 * @brief Disable the remapping of TIM10_CH1.
bogdanm 0:9b334a45a8ff 597 * @note DISABLE: No remap (TIM10_CH1 on PB8).
bogdanm 0:9b334a45a8ff 598 * @retval None
bogdanm 0:9b334a45a8ff 599 */
bogdanm 0:9b334a45a8ff 600 #define __HAL_AFIO_REMAP_TIM10_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM10_REMAP)
bogdanm 0:9b334a45a8ff 601 #endif
bogdanm 0:9b334a45a8ff 602
bogdanm 0:9b334a45a8ff 603 #if defined(AFIO_MAPR2_TIM11_REMAP)
bogdanm 0:9b334a45a8ff 604 /**
bogdanm 0:9b334a45a8ff 605 * @brief Enable the remapping of TIM11_CH1.
bogdanm 0:9b334a45a8ff 606 * @note ENABLE: Remap (TIM11_CH1 on PF7).
bogdanm 0:9b334a45a8ff 607 * @retval None
bogdanm 0:9b334a45a8ff 608 */
bogdanm 0:9b334a45a8ff 609 #define __HAL_AFIO_REMAP_TIM11_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM11_REMAP)
bogdanm 0:9b334a45a8ff 610
bogdanm 0:9b334a45a8ff 611 /**
bogdanm 0:9b334a45a8ff 612 * @brief Disable the remapping of TIM11_CH1.
bogdanm 0:9b334a45a8ff 613 * @note DISABLE: No remap (TIM11_CH1 on PB9).
bogdanm 0:9b334a45a8ff 614 * @retval None
bogdanm 0:9b334a45a8ff 615 */
bogdanm 0:9b334a45a8ff 616 #define __HAL_AFIO_REMAP_TIM11_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM11_REMAP)
bogdanm 0:9b334a45a8ff 617 #endif
bogdanm 0:9b334a45a8ff 618
bogdanm 0:9b334a45a8ff 619 #if defined(AFIO_MAPR2_TIM13_REMAP)
bogdanm 0:9b334a45a8ff 620
bogdanm 0:9b334a45a8ff 621 /**
bogdanm 0:9b334a45a8ff 622 * @brief Enable the remapping of TIM13_CH1.
bogdanm 0:9b334a45a8ff 623 * @note ENABLE: Remap STM32F100:(TIM13_CH1 on PF8). Others:(TIM13_CH1 on PB0).
bogdanm 0:9b334a45a8ff 624 * @retval None
bogdanm 0:9b334a45a8ff 625 */
bogdanm 0:9b334a45a8ff 626 #define __HAL_AFIO_REMAP_TIM13_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM13_REMAP)
bogdanm 0:9b334a45a8ff 627
bogdanm 0:9b334a45a8ff 628 /**
bogdanm 0:9b334a45a8ff 629 * @brief Disable the remapping of TIM13_CH1.
bogdanm 0:9b334a45a8ff 630 * @note DISABLE: No remap STM32F100:(TIM13_CH1 on PA6). Others:(TIM13_CH1 on PC8).
bogdanm 0:9b334a45a8ff 631 * @retval None
bogdanm 0:9b334a45a8ff 632 */
bogdanm 0:9b334a45a8ff 633 #define __HAL_AFIO_REMAP_TIM13_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM13_REMAP)
bogdanm 0:9b334a45a8ff 634 #endif
bogdanm 0:9b334a45a8ff 635
bogdanm 0:9b334a45a8ff 636 #if defined(AFIO_MAPR2_TIM14_REMAP)
bogdanm 0:9b334a45a8ff 637
bogdanm 0:9b334a45a8ff 638 /**
bogdanm 0:9b334a45a8ff 639 * @brief Enable the remapping of TIM14_CH1.
bogdanm 0:9b334a45a8ff 640 * @note ENABLE: Remap STM32F100:(TIM14_CH1 on PB1). Others:(TIM14_CH1 on PF9).
bogdanm 0:9b334a45a8ff 641 * @retval None
bogdanm 0:9b334a45a8ff 642 */
bogdanm 0:9b334a45a8ff 643 #define __HAL_AFIO_REMAP_TIM14_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM14_REMAP)
bogdanm 0:9b334a45a8ff 644
bogdanm 0:9b334a45a8ff 645 /**
bogdanm 0:9b334a45a8ff 646 * @brief Disable the remapping of TIM14_CH1.
bogdanm 0:9b334a45a8ff 647 * @note DISABLE: No remap STM32F100:(TIM14_CH1 on PC9). Others:(TIM14_CH1 on PA7).
bogdanm 0:9b334a45a8ff 648 * @retval None
bogdanm 0:9b334a45a8ff 649 */
bogdanm 0:9b334a45a8ff 650 #define __HAL_AFIO_REMAP_TIM14_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM14_REMAP)
bogdanm 0:9b334a45a8ff 651 #endif
bogdanm 0:9b334a45a8ff 652
bogdanm 0:9b334a45a8ff 653 #if defined(AFIO_MAPR2_FSMC_NADV_REMAP)
bogdanm 0:9b334a45a8ff 654
bogdanm 0:9b334a45a8ff 655 /**
bogdanm 0:9b334a45a8ff 656 * @brief Controls the use of the optional FSMC_NADV signal.
bogdanm 0:9b334a45a8ff 657 * @note DISCONNECTED: The NADV signal is not connected. The I/O pin can be used by another peripheral.
bogdanm 0:9b334a45a8ff 658 * @retval None
bogdanm 0:9b334a45a8ff 659 */
bogdanm 0:9b334a45a8ff 660 #define __HAL_AFIO_FSMCNADV_DISCONNECTED() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_FSMC_NADV_REMAP)
bogdanm 0:9b334a45a8ff 661
bogdanm 0:9b334a45a8ff 662 /**
bogdanm 0:9b334a45a8ff 663 * @brief Controls the use of the optional FSMC_NADV signal.
bogdanm 0:9b334a45a8ff 664 * @note CONNECTED: The NADV signal is connected to the output (default).
bogdanm 0:9b334a45a8ff 665 * @retval None
bogdanm 0:9b334a45a8ff 666 */
bogdanm 0:9b334a45a8ff 667 #define __HAL_AFIO_FSMCNADV_CONNECTED() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_FSMC_NADV_REMAP)
bogdanm 0:9b334a45a8ff 668 #endif
bogdanm 0:9b334a45a8ff 669
bogdanm 0:9b334a45a8ff 670 #if defined(AFIO_MAPR2_TIM15_REMAP)
bogdanm 0:9b334a45a8ff 671
bogdanm 0:9b334a45a8ff 672 /**
bogdanm 0:9b334a45a8ff 673 * @brief Enable the remapping of TIM15_CH1 and TIM15_CH2.
bogdanm 0:9b334a45a8ff 674 * @note ENABLE: Remap (TIM15_CH1 on PB14 and TIM15_CH2 on PB15).
bogdanm 0:9b334a45a8ff 675 * @retval None
bogdanm 0:9b334a45a8ff 676 */
bogdanm 0:9b334a45a8ff 677 #define __HAL_AFIO_REMAP_TIM15_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM15_REMAP)
bogdanm 0:9b334a45a8ff 678
bogdanm 0:9b334a45a8ff 679 /**
bogdanm 0:9b334a45a8ff 680 * @brief Disable the remapping of TIM15_CH1 and TIM15_CH2.
bogdanm 0:9b334a45a8ff 681 * @note DISABLE: No remap (TIM15_CH1 on PA2 and TIM15_CH2 on PA3).
bogdanm 0:9b334a45a8ff 682 * @retval None
bogdanm 0:9b334a45a8ff 683 */
bogdanm 0:9b334a45a8ff 684 #define __HAL_AFIO_REMAP_TIM15_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM15_REMAP)
bogdanm 0:9b334a45a8ff 685 #endif
bogdanm 0:9b334a45a8ff 686
bogdanm 0:9b334a45a8ff 687 #if defined(AFIO_MAPR2_TIM16_REMAP)
bogdanm 0:9b334a45a8ff 688
bogdanm 0:9b334a45a8ff 689 /**
bogdanm 0:9b334a45a8ff 690 * @brief Enable the remapping of TIM16_CH1.
bogdanm 0:9b334a45a8ff 691 * @note ENABLE: Remap (TIM16_CH1 on PA6).
bogdanm 0:9b334a45a8ff 692 * @retval None
bogdanm 0:9b334a45a8ff 693 */
bogdanm 0:9b334a45a8ff 694 #define __HAL_AFIO_REMAP_TIM16_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM16_REMAP)
bogdanm 0:9b334a45a8ff 695
bogdanm 0:9b334a45a8ff 696 /**
bogdanm 0:9b334a45a8ff 697 * @brief Disable the remapping of TIM16_CH1.
bogdanm 0:9b334a45a8ff 698 * @note DISABLE: No remap (TIM16_CH1 on PB8).
bogdanm 0:9b334a45a8ff 699 * @retval None
bogdanm 0:9b334a45a8ff 700 */
bogdanm 0:9b334a45a8ff 701 #define __HAL_AFIO_REMAP_TIM16_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM16_REMAP)
bogdanm 0:9b334a45a8ff 702 #endif
bogdanm 0:9b334a45a8ff 703
bogdanm 0:9b334a45a8ff 704 #if defined(AFIO_MAPR2_TIM17_REMAP)
bogdanm 0:9b334a45a8ff 705
bogdanm 0:9b334a45a8ff 706 /**
bogdanm 0:9b334a45a8ff 707 * @brief Enable the remapping of TIM17_CH1.
bogdanm 0:9b334a45a8ff 708 * @note ENABLE: Remap (TIM17_CH1 on PA7).
bogdanm 0:9b334a45a8ff 709 * @retval None
bogdanm 0:9b334a45a8ff 710 */
bogdanm 0:9b334a45a8ff 711 #define __HAL_AFIO_REMAP_TIM17_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM17_REMAP)
bogdanm 0:9b334a45a8ff 712
bogdanm 0:9b334a45a8ff 713 /**
bogdanm 0:9b334a45a8ff 714 * @brief Disable the remapping of TIM17_CH1.
bogdanm 0:9b334a45a8ff 715 * @note DISABLE: No remap (TIM17_CH1 on PB9).
bogdanm 0:9b334a45a8ff 716 * @retval None
bogdanm 0:9b334a45a8ff 717 */
bogdanm 0:9b334a45a8ff 718 #define __HAL_AFIO_REMAP_TIM17_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM17_REMAP)
bogdanm 0:9b334a45a8ff 719 #endif
bogdanm 0:9b334a45a8ff 720
bogdanm 0:9b334a45a8ff 721 #if defined(AFIO_MAPR2_CEC_REMAP)
bogdanm 0:9b334a45a8ff 722
bogdanm 0:9b334a45a8ff 723 /**
bogdanm 0:9b334a45a8ff 724 * @brief Enable the remapping of CEC.
bogdanm 0:9b334a45a8ff 725 * @note ENABLE: Remap (CEC on PB10).
bogdanm 0:9b334a45a8ff 726 * @retval None
bogdanm 0:9b334a45a8ff 727 */
bogdanm 0:9b334a45a8ff 728 #define __HAL_AFIO_REMAP_CEC_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_CEC_REMAP)
bogdanm 0:9b334a45a8ff 729
bogdanm 0:9b334a45a8ff 730 /**
bogdanm 0:9b334a45a8ff 731 * @brief Disable the remapping of CEC.
bogdanm 0:9b334a45a8ff 732 * @note DISABLE: No remap (CEC on PB8).
bogdanm 0:9b334a45a8ff 733 * @retval None
bogdanm 0:9b334a45a8ff 734 */
bogdanm 0:9b334a45a8ff 735 #define __HAL_AFIO_REMAP_CEC_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_CEC_REMAP)
bogdanm 0:9b334a45a8ff 736 #endif
bogdanm 0:9b334a45a8ff 737
bogdanm 0:9b334a45a8ff 738 #if defined(AFIO_MAPR2_TIM1_DMA_REMAP)
bogdanm 0:9b334a45a8ff 739
bogdanm 0:9b334a45a8ff 740 /**
bogdanm 0:9b334a45a8ff 741 * @brief Controls the mapping of the TIM1_CH1 TIM1_CH2 DMA requests onto the DMA1 channels.
bogdanm 0:9b334a45a8ff 742 * @note ENABLE: Remap (TIM1_CH1 DMA request/DMA1 Channel6, TIM1_CH2 DMA request/DMA1 Channel6)
bogdanm 0:9b334a45a8ff 743 * @retval None
bogdanm 0:9b334a45a8ff 744 */
bogdanm 0:9b334a45a8ff 745 #define __HAL_AFIO_REMAP_TIM1DMA_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM1_DMA_REMAP)
bogdanm 0:9b334a45a8ff 746
bogdanm 0:9b334a45a8ff 747 /**
bogdanm 0:9b334a45a8ff 748 * @brief Controls the mapping of the TIM1_CH1 TIM1_CH2 DMA requests onto the DMA1 channels.
bogdanm 0:9b334a45a8ff 749 * @note DISABLE: No remap (TIM1_CH1 DMA request/DMA1 Channel2, TIM1_CH2 DMA request/DMA1 Channel3).
bogdanm 0:9b334a45a8ff 750 * @retval None
bogdanm 0:9b334a45a8ff 751 */
bogdanm 0:9b334a45a8ff 752 #define __HAL_AFIO_REMAP_TIM1DMA_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM1_DMA_REMAP)
bogdanm 0:9b334a45a8ff 753 #endif
bogdanm 0:9b334a45a8ff 754
bogdanm 0:9b334a45a8ff 755 #if defined(AFIO_MAPR2_TIM67_DAC_DMA_REMAP)
bogdanm 0:9b334a45a8ff 756
bogdanm 0:9b334a45a8ff 757 /**
bogdanm 0:9b334a45a8ff 758 * @brief Controls the mapping of the TIM6_DAC1 and TIM7_DAC2 DMA requests onto the DMA1 channels.
bogdanm 0:9b334a45a8ff 759 * @note ENABLE: Remap (TIM6_DAC1 DMA request/DMA1 Channel3, TIM7_DAC2 DMA request/DMA1 Channel4)
bogdanm 0:9b334a45a8ff 760 * @retval None
bogdanm 0:9b334a45a8ff 761 */
bogdanm 0:9b334a45a8ff 762 #define __HAL_AFIO_REMAP_TIM67DACDMA_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM67_DAC_DMA_REMAP)
bogdanm 0:9b334a45a8ff 763
bogdanm 0:9b334a45a8ff 764 /**
bogdanm 0:9b334a45a8ff 765 * @brief Controls the mapping of the TIM6_DAC1 and TIM7_DAC2 DMA requests onto the DMA1 channels.
bogdanm 0:9b334a45a8ff 766 * @note DISABLE: No remap (TIM6_DAC1 DMA request/DMA2 Channel3, TIM7_DAC2 DMA request/DMA2 Channel4)
bogdanm 0:9b334a45a8ff 767 * @retval None
bogdanm 0:9b334a45a8ff 768 */
bogdanm 0:9b334a45a8ff 769 #define __HAL_AFIO_REMAP_TIM67DACDMA_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM67_DAC_DMA_REMAP)
bogdanm 0:9b334a45a8ff 770 #endif
bogdanm 0:9b334a45a8ff 771
bogdanm 0:9b334a45a8ff 772 #if defined(AFIO_MAPR2_TIM12_REMAP)
bogdanm 0:9b334a45a8ff 773
bogdanm 0:9b334a45a8ff 774 /**
bogdanm 0:9b334a45a8ff 775 * @brief Enable the remapping of TIM12_CH1 and TIM12_CH2.
bogdanm 0:9b334a45a8ff 776 * @note ENABLE: Remap (TIM12_CH1 on PB12 and TIM12_CH2 on PB13).
bogdanm 0:9b334a45a8ff 777 * @note This bit is available only in high density value line devices.
bogdanm 0:9b334a45a8ff 778 * @retval None
bogdanm 0:9b334a45a8ff 779 */
bogdanm 0:9b334a45a8ff 780 #define __HAL_AFIO_REMAP_TIM12_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM12_REMAP)
bogdanm 0:9b334a45a8ff 781
bogdanm 0:9b334a45a8ff 782 /**
bogdanm 0:9b334a45a8ff 783 * @brief Disable the remapping of TIM12_CH1 and TIM12_CH2.
bogdanm 0:9b334a45a8ff 784 * @note DISABLE: No remap (TIM12_CH1 on PC4 and TIM12_CH2 on PC5).
bogdanm 0:9b334a45a8ff 785 * @note This bit is available only in high density value line devices.
bogdanm 0:9b334a45a8ff 786 * @retval None
bogdanm 0:9b334a45a8ff 787 */
bogdanm 0:9b334a45a8ff 788 #define __HAL_AFIO_REMAP_TIM12_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM12_REMAP)
bogdanm 0:9b334a45a8ff 789 #endif
bogdanm 0:9b334a45a8ff 790
bogdanm 0:9b334a45a8ff 791 #if defined(AFIO_MAPR2_MISC_REMAP)
bogdanm 0:9b334a45a8ff 792
bogdanm 0:9b334a45a8ff 793 /**
bogdanm 0:9b334a45a8ff 794 * @brief Miscellaneous features remapping.
bogdanm 0:9b334a45a8ff 795 * This bit is set and cleared by software. It controls miscellaneous features.
bogdanm 0:9b334a45a8ff 796 * The DMA2 channel 5 interrupt position in the vector table.
bogdanm 0:9b334a45a8ff 797 * The timer selection for DAC trigger 3 (TSEL[2:0] = 011, for more details refer to the DAC_CR register).
bogdanm 0:9b334a45a8ff 798 * @note ENABLE: DMA2 channel 5 interrupt is mapped separately at position 60 and TIM15 TRGO event is
bogdanm 0:9b334a45a8ff 799 * selected as DAC Trigger 3, TIM15 triggers TIM1/3.
bogdanm 0:9b334a45a8ff 800 * @note This bit is available only in high density value line devices.
bogdanm 0:9b334a45a8ff 801 * @retval None
bogdanm 0:9b334a45a8ff 802 */
bogdanm 0:9b334a45a8ff 803 #define __HAL_AFIO_REMAP_MISC_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_MISC_REMAP)
bogdanm 0:9b334a45a8ff 804
bogdanm 0:9b334a45a8ff 805 /**
bogdanm 0:9b334a45a8ff 806 * @brief Miscellaneous features remapping.
bogdanm 0:9b334a45a8ff 807 * This bit is set and cleared by software. It controls miscellaneous features.
bogdanm 0:9b334a45a8ff 808 * The DMA2 channel 5 interrupt position in the vector table.
bogdanm 0:9b334a45a8ff 809 * The timer selection for DAC trigger 3 (TSEL[2:0] = 011, for more details refer to the DAC_CR register).
bogdanm 0:9b334a45a8ff 810 * @note DISABLE: DMA2 channel 5 interrupt is mapped with DMA2 channel 4 at position 59, TIM5 TRGO
bogdanm 0:9b334a45a8ff 811 * event is selected as DAC Trigger 3, TIM5 triggers TIM1/3.
bogdanm 0:9b334a45a8ff 812 * @note This bit is available only in high density value line devices.
bogdanm 0:9b334a45a8ff 813 * @retval None
bogdanm 0:9b334a45a8ff 814 */
bogdanm 0:9b334a45a8ff 815 #define __HAL_AFIO_REMAP_MISC_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_MISC_REMAP)
bogdanm 0:9b334a45a8ff 816 #endif
bogdanm 0:9b334a45a8ff 817
bogdanm 0:9b334a45a8ff 818 /**
bogdanm 0:9b334a45a8ff 819 * @}
bogdanm 0:9b334a45a8ff 820 */
bogdanm 0:9b334a45a8ff 821
bogdanm 0:9b334a45a8ff 822 /**
bogdanm 0:9b334a45a8ff 823 * @}
bogdanm 0:9b334a45a8ff 824 */
bogdanm 0:9b334a45a8ff 825
bogdanm 0:9b334a45a8ff 826 /** @defgroup GPIOEx_Private_Macros GPIOEx Private Macros
bogdanm 0:9b334a45a8ff 827 * @{
bogdanm 0:9b334a45a8ff 828 */
bogdanm 0:9b334a45a8ff 829 #if defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)
bogdanm 0:9b334a45a8ff 830 #define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0U :\
bogdanm 0:9b334a45a8ff 831 ((__GPIOx__) == (GPIOB))? 1U :\
bogdanm 0:9b334a45a8ff 832 ((__GPIOx__) == (GPIOC))? 2U :3U)
bogdanm 0:9b334a45a8ff 833 #elif defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F103xB) || defined(STM32F105xC) || defined(STM32F107xC)
bogdanm 0:9b334a45a8ff 834 #define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0U :\
bogdanm 0:9b334a45a8ff 835 ((__GPIOx__) == (GPIOB))? 1U :\
bogdanm 0:9b334a45a8ff 836 ((__GPIOx__) == (GPIOC))? 2U :\
bogdanm 0:9b334a45a8ff 837 ((__GPIOx__) == (GPIOD))? 3U :4U)
bogdanm 0:9b334a45a8ff 838 #elif defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG)
bogdanm 0:9b334a45a8ff 839 #define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0U :\
bogdanm 0:9b334a45a8ff 840 ((__GPIOx__) == (GPIOB))? 1U :\
bogdanm 0:9b334a45a8ff 841 ((__GPIOx__) == (GPIOC))? 2U :\
bogdanm 0:9b334a45a8ff 842 ((__GPIOx__) == (GPIOD))? 3U :\
bogdanm 0:9b334a45a8ff 843 ((__GPIOx__) == (GPIOE))? 4U :\
bogdanm 0:9b334a45a8ff 844 ((__GPIOx__) == (GPIOF))? 5U :6U)
bogdanm 0:9b334a45a8ff 845 #endif
bogdanm 0:9b334a45a8ff 846
bogdanm 0:9b334a45a8ff 847 /**
bogdanm 0:9b334a45a8ff 848 * @}
bogdanm 0:9b334a45a8ff 849 */
bogdanm 0:9b334a45a8ff 850
bogdanm 0:9b334a45a8ff 851 /* Exported macro ------------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 852 /* Exported functions --------------------------------------------------------*/
bogdanm 0:9b334a45a8ff 853
bogdanm 0:9b334a45a8ff 854 /** @addtogroup GPIOEx_Exported_Functions
bogdanm 0:9b334a45a8ff 855 * @{
bogdanm 0:9b334a45a8ff 856 */
bogdanm 0:9b334a45a8ff 857
bogdanm 0:9b334a45a8ff 858 /** @addtogroup GPIOEx_Exported_Functions_Group1
bogdanm 0:9b334a45a8ff 859 * @{
bogdanm 0:9b334a45a8ff 860 */
bogdanm 0:9b334a45a8ff 861 void HAL_GPIOEx_ConfigEventout(uint32_t GPIO_PortSource, uint32_t GPIO_PinSource);
bogdanm 0:9b334a45a8ff 862 void HAL_GPIOEx_EnableEventout(void);
bogdanm 0:9b334a45a8ff 863 void HAL_GPIOEx_DisableEventout(void);
bogdanm 0:9b334a45a8ff 864
bogdanm 0:9b334a45a8ff 865 /**
bogdanm 0:9b334a45a8ff 866 * @}
bogdanm 0:9b334a45a8ff 867 */
bogdanm 0:9b334a45a8ff 868
bogdanm 0:9b334a45a8ff 869 /**
bogdanm 0:9b334a45a8ff 870 * @}
bogdanm 0:9b334a45a8ff 871 */
bogdanm 0:9b334a45a8ff 872
bogdanm 0:9b334a45a8ff 873 /**
bogdanm 0:9b334a45a8ff 874 * @}
bogdanm 0:9b334a45a8ff 875 */
bogdanm 0:9b334a45a8ff 876
bogdanm 0:9b334a45a8ff 877 /**
bogdanm 0:9b334a45a8ff 878 * @}
bogdanm 0:9b334a45a8ff 879 */
bogdanm 0:9b334a45a8ff 880
bogdanm 0:9b334a45a8ff 881 #ifdef __cplusplus
bogdanm 0:9b334a45a8ff 882 }
bogdanm 0:9b334a45a8ff 883 #endif
bogdanm 0:9b334a45a8ff 884
bogdanm 0:9b334a45a8ff 885 #endif /* __STM32F1xx_HAL_GPIO_EX_H */
bogdanm 0:9b334a45a8ff 886
bogdanm 0:9b334a45a8ff 887 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/