I2C_EEPROM

Committer:
jhon309
Date:
Thu Aug 13 00:23:16 2015 +0000
Revision:
0:ac8863619623
I2C

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jhon309 0:ac8863619623 1 /**
jhon309 0:ac8863619623 2 ******************************************************************************
jhon309 0:ac8863619623 3 * @file stm32f0xx_hal_dma_ex.h
jhon309 0:ac8863619623 4 * @author MCD Application Team
jhon309 0:ac8863619623 5 * @version V1.2.0
jhon309 0:ac8863619623 6 * @date 11-December-2014
jhon309 0:ac8863619623 7 * @brief Header file of DMA HAL Extension module.
jhon309 0:ac8863619623 8 ******************************************************************************
jhon309 0:ac8863619623 9 * @attention
jhon309 0:ac8863619623 10 *
jhon309 0:ac8863619623 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
jhon309 0:ac8863619623 12 *
jhon309 0:ac8863619623 13 * Redistribution and use in source and binary forms, with or without modification,
jhon309 0:ac8863619623 14 * are permitted provided that the following conditions are met:
jhon309 0:ac8863619623 15 * 1. Redistributions of source code must retain the above copyright notice,
jhon309 0:ac8863619623 16 * this list of conditions and the following disclaimer.
jhon309 0:ac8863619623 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
jhon309 0:ac8863619623 18 * this list of conditions and the following disclaimer in the documentation
jhon309 0:ac8863619623 19 * and/or other materials provided with the distribution.
jhon309 0:ac8863619623 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
jhon309 0:ac8863619623 21 * may be used to endorse or promote products derived from this software
jhon309 0:ac8863619623 22 * without specific prior written permission.
jhon309 0:ac8863619623 23 *
jhon309 0:ac8863619623 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
jhon309 0:ac8863619623 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
jhon309 0:ac8863619623 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
jhon309 0:ac8863619623 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
jhon309 0:ac8863619623 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
jhon309 0:ac8863619623 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
jhon309 0:ac8863619623 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
jhon309 0:ac8863619623 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
jhon309 0:ac8863619623 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
jhon309 0:ac8863619623 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
jhon309 0:ac8863619623 34 *
jhon309 0:ac8863619623 35 ******************************************************************************
jhon309 0:ac8863619623 36 */
jhon309 0:ac8863619623 37
jhon309 0:ac8863619623 38 /* Define to prevent recursive inclusion -------------------------------------*/
jhon309 0:ac8863619623 39 #ifndef __STM32F0xx_HAL_DMA_EX_H
jhon309 0:ac8863619623 40 #define __STM32F0xx_HAL_DMA_EX_H
jhon309 0:ac8863619623 41
jhon309 0:ac8863619623 42 #ifdef __cplusplus
jhon309 0:ac8863619623 43 extern "C" {
jhon309 0:ac8863619623 44 #endif
jhon309 0:ac8863619623 45
jhon309 0:ac8863619623 46 /* Includes ------------------------------------------------------------------*/
jhon309 0:ac8863619623 47 #include "stm32f0xx_hal_def.h"
jhon309 0:ac8863619623 48
jhon309 0:ac8863619623 49 /** @addtogroup STM32F0xx_HAL_Driver
jhon309 0:ac8863619623 50 * @{
jhon309 0:ac8863619623 51 */
jhon309 0:ac8863619623 52
jhon309 0:ac8863619623 53 /** @addtogroup DMAEx
jhon309 0:ac8863619623 54 * @{
jhon309 0:ac8863619623 55 */
jhon309 0:ac8863619623 56
jhon309 0:ac8863619623 57 /* Exported types ------------------------------------------------------------*/
jhon309 0:ac8863619623 58 /* Exported constants --------------------------------------------------------*/
jhon309 0:ac8863619623 59 #if defined(STM32F091xC) || defined(STM32F098xx) || defined(STM32F030xC)
jhon309 0:ac8863619623 60 /** @defgroup DMAEx_Exported_Constants DMAEx Exported Constants
jhon309 0:ac8863619623 61 * @{
jhon309 0:ac8863619623 62 */
jhon309 0:ac8863619623 63 #define DMA1_CHANNEL1_RMP 0x00000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 64 #define DMA1_CHANNEL2_RMP 0x10000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 65 #define DMA1_CHANNEL3_RMP 0x20000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 66 #define DMA1_CHANNEL4_RMP 0x30000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 67 #define DMA1_CHANNEL5_RMP 0x40000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 68 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 69 #define DMA1_CHANNEL6_RMP 0x50000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 70 #define DMA1_CHANNEL7_RMP 0x60000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 71 #define DMA2_CHANNEL1_RMP 0x00000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 72 #define DMA2_CHANNEL2_RMP 0x10000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 73 #define DMA2_CHANNEL3_RMP 0x20000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 74 #define DMA2_CHANNEL4_RMP 0x30000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 75 #define DMA2_CHANNEL5_RMP 0x40000000 /*!< Internal define for remaping on STM32F09x/30xC */
jhon309 0:ac8863619623 76 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 77
jhon309 0:ac8863619623 78 /****************** DMA1 remap bit field definition********************/
jhon309 0:ac8863619623 79 /* DMA1 - Channel 1 */
jhon309 0:ac8863619623 80 #define HAL_DMA1_CH1_DEFAULT (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 81 #define HAL_DMA1_CH1_ADC (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_ADC) /*!< Remap ADC on DMA1 Channel 1*/
jhon309 0:ac8863619623 82 #define HAL_DMA1_CH1_TIM17_CH1 (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_TIM17_CH1) /*!< Remap TIM17 channel 1 on DMA1 channel 1 */
jhon309 0:ac8863619623 83 #define HAL_DMA1_CH1_TIM17_UP (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_TIM17_UP) /*!< Remap TIM17 up on DMA1 channel 1 */
jhon309 0:ac8863619623 84 #define HAL_DMA1_CH1_USART1_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART1_RX) /*!< Remap USART1 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 85 #define HAL_DMA1_CH1_USART2_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART2_RX) /*!< Remap USART2 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 86 #define HAL_DMA1_CH1_USART3_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART3_RX) /*!< Remap USART3 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 87 #define HAL_DMA1_CH1_USART4_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART4_RX) /*!< Remap USART4 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 88 #define HAL_DMA1_CH1_USART5_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART5_RX) /*!< Remap USART5 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 89 #define HAL_DMA1_CH1_USART6_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART6_RX) /*!< Remap USART6 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 90 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 91 #define HAL_DMA1_CH1_USART7_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART7_RX) /*!< Remap USART7 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 92 #define HAL_DMA1_CH1_USART8_RX (uint32_t) (DMA1_CHANNEL1_RMP | DMA1_CSELR_CH1_USART8_RX) /*!< Remap USART8 Rx on DMA1 channel 1 */
jhon309 0:ac8863619623 93 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 94
jhon309 0:ac8863619623 95 /* DMA1 - Channel 2 */
jhon309 0:ac8863619623 96 #define HAL_DMA1_CH2_DEFAULT (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 97 #define HAL_DMA1_CH2_ADC (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_ADC) /*!< Remap ADC on DMA1 channel 2 */
jhon309 0:ac8863619623 98 #define HAL_DMA1_CH2_I2C1_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_I2C1_TX) /*!< Remap I2C1 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 99 #define HAL_DMA1_CH2_SPI1_RX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_SPI1_RX) /*!< Remap SPI1 Rx on DMA1 channel 2 */
jhon309 0:ac8863619623 100 #define HAL_DMA1_CH2_TIM1_CH1 (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_TIM1_CH1) /*!< Remap TIM1 channel 1 on DMA1 channel 2 */
jhon309 0:ac8863619623 101 #define HAL_DMA1_CH2_TIM17_CH1 (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_TIM17_CH1) /*!< Remap TIM17 channel 1 on DMA1 channel 2 */
jhon309 0:ac8863619623 102 #define HAL_DMA1_CH2_TIM17_UP (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_TIM17_UP) /*!< Remap TIM17 up on DMA1 channel 2 */
jhon309 0:ac8863619623 103 #define HAL_DMA1_CH2_USART1_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART1_TX) /*!< Remap USART1 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 104 #define HAL_DMA1_CH2_USART2_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART2_TX) /*!< Remap USART2 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 105 #define HAL_DMA1_CH2_USART3_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART3_TX) /*!< Remap USART3 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 106 #define HAL_DMA1_CH2_USART4_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART4_TX) /*!< Remap USART4 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 107 #define HAL_DMA1_CH2_USART5_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART5_TX) /*!< Remap USART5 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 108 #define HAL_DMA1_CH2_USART6_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART6_TX) /*!< Remap USART6 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 109 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 110 #define HAL_DMA1_CH2_USART7_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART7_TX) /*!< Remap USART7 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 111 #define HAL_DMA1_CH2_USART8_TX (uint32_t) (DMA1_CHANNEL2_RMP | DMA1_CSELR_CH2_USART8_TX) /*!< Remap USART8 Tx on DMA1 channel 2 */
jhon309 0:ac8863619623 112 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 113
jhon309 0:ac8863619623 114 /* DMA1 - Channel 3 */
jhon309 0:ac8863619623 115 #define HAL_DMA1_CH3_DEFAULT (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 116 #define HAL_DMA1_CH3_TIM6_UP (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_TIM6_UP) /*!< Remap TIM6 up on DMA1 channel 3 */
jhon309 0:ac8863619623 117 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 118 #define HAL_DMA1_CH3_DAC_CH1 (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_DAC_CH1) /*!< Remap DAC Channel 1on DMA1 channel 3 */
jhon309 0:ac8863619623 119 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 120 #define HAL_DMA1_CH3_I2C1_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_I2C1_RX) /*!< Remap I2C1 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 121 #define HAL_DMA1_CH3_SPI1_TX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_SPI1_TX) /*!< Remap SPI1 Tx on DMA1 channel 3 */
jhon309 0:ac8863619623 122 #define HAL_DMA1_CH3_TIM1_CH2 (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_TIM1_CH2) /*!< Remap TIM1 channel 2 on DMA1 channel 3 */
jhon309 0:ac8863619623 123 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 124 #define HAL_DMA1_CH3_TIM2_CH2 (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_TIM2_CH2) /*!< Remap TIM2 channel 2 on DMA1 channel 3 */
jhon309 0:ac8863619623 125 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 126 #define HAL_DMA1_CH3_TIM16_CH1 (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_TIM16_CH1) /*!< Remap TIM16 channel 1 on DMA1 channel 3 */
jhon309 0:ac8863619623 127 #define HAL_DMA1_CH3_TIM16_UP (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_TIM16_UP) /*!< Remap TIM16 up on DMA1 channel 3 */
jhon309 0:ac8863619623 128 #define HAL_DMA1_CH3_USART1_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART1_RX) /*!< Remap USART1 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 129 #define HAL_DMA1_CH3_USART2_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART2_RX) /*!< Remap USART2 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 130 #define HAL_DMA1_CH3_USART3_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART3_RX) /*!< Remap USART3 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 131 #define HAL_DMA1_CH3_USART4_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART4_RX) /*!< Remap USART4 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 132 #define HAL_DMA1_CH3_USART5_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART5_RX) /*!< Remap USART5 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 133 #define HAL_DMA1_CH3_USART6_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART6_RX) /*!< Remap USART6 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 134 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 135 #define HAL_DMA1_CH3_USART7_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART7_RX) /*!< Remap USART7 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 136 #define HAL_DMA1_CH3_USART8_RX (uint32_t) (DMA1_CHANNEL3_RMP | DMA1_CSELR_CH3_USART8_RX) /*!< Remap USART8 Rx on DMA1 channel 3 */
jhon309 0:ac8863619623 137 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 138
jhon309 0:ac8863619623 139 /* DMA1 - Channel 4 */
jhon309 0:ac8863619623 140 #define HAL_DMA1_CH4_DEFAULT (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 141 #define HAL_DMA1_CH4_TIM7_UP (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_TIM7_UP) /*!< Remap TIM7 up on DMA1 channel 4 */
jhon309 0:ac8863619623 142 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 143 #define HAL_DMA1_CH4_DAC_CH2 (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_DAC_CH2) /*!< Remap DAC Channel 2 on DMA1 channel 4 */
jhon309 0:ac8863619623 144 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 145 #define HAL_DMA1_CH4_I2C2_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_I2C2_TX) /*!< Remap I2C2 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 146 #define HAL_DMA1_CH4_SPI2_RX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_SPI2_RX) /*!< Remap SPI2 Rx on DMA1 channel 4 */
jhon309 0:ac8863619623 147 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 148 #define HAL_DMA1_CH4_TIM2_CH4 (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_TIM2_CH4) /*!< Remap TIM2 channel 4 on DMA1 channel 4 */
jhon309 0:ac8863619623 149 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 150 #define HAL_DMA1_CH4_TIM3_CH1 (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_TIM3_CH1) /*!< Remap TIM3 channel 1 on DMA1 channel 4 */
jhon309 0:ac8863619623 151 #define HAL_DMA1_CH4_TIM3_TRIG (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_TIM3_TRIG) /*!< Remap TIM3 Trig on DMA1 channel 4 */
jhon309 0:ac8863619623 152 #define HAL_DMA1_CH4_TIM16_CH1 (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_TIM16_CH1) /*!< Remap TIM16 channel 1 on DMA1 channel 4 */
jhon309 0:ac8863619623 153 #define HAL_DMA1_CH4_TIM16_UP (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_TIM16_UP) /*!< Remap TIM16 up on DMA1 channel 4 */
jhon309 0:ac8863619623 154 #define HAL_DMA1_CH4_USART1_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART1_TX) /*!< Remap USART1 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 155 #define HAL_DMA1_CH4_USART2_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART2_TX) /*!< Remap USART2 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 156 #define HAL_DMA1_CH4_USART3_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART3_TX) /*!< Remap USART3 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 157 #define HAL_DMA1_CH4_USART4_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART4_TX) /*!< Remap USART4 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 158 #define HAL_DMA1_CH4_USART5_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART5_TX) /*!< Remap USART5 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 159 #define HAL_DMA1_CH4_USART6_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART6_TX) /*!< Remap USART6 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 160 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 161 #define HAL_DMA1_CH4_USART7_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART7_TX) /*!< Remap USART7 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 162 #define HAL_DMA1_CH4_USART8_TX (uint32_t) (DMA1_CHANNEL4_RMP | DMA1_CSELR_CH4_USART8_TX) /*!< Remap USART8 Tx on DMA1 channel 4 */
jhon309 0:ac8863619623 163 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 164
jhon309 0:ac8863619623 165 /* DMA1 - Channel 5 */
jhon309 0:ac8863619623 166 #define HAL_DMA1_CH5_DEFAULT (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 167 #define HAL_DMA1_CH5_I2C2_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_I2C2_RX) /*!< Remap I2C2 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 168 #define HAL_DMA1_CH5_SPI2_TX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_SPI2_TX) /*!< Remap SPI1 Tx on DMA1 channel 5 */
jhon309 0:ac8863619623 169 #define HAL_DMA1_CH5_TIM1_CH3 (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_TIM1_CH3) /*!< Remap TIM1 channel 3 on DMA1 channel 5 */
jhon309 0:ac8863619623 170 #define HAL_DMA1_CH5_USART1_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART1_RX) /*!< Remap USART1 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 171 #define HAL_DMA1_CH5_USART2_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART2_RX) /*!< Remap USART2 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 172 #define HAL_DMA1_CH5_USART3_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART3_RX) /*!< Remap USART3 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 173 #define HAL_DMA1_CH5_USART4_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART4_RX) /*!< Remap USART4 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 174 #define HAL_DMA1_CH5_USART5_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART5_RX) /*!< Remap USART5 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 175 #define HAL_DMA1_CH5_USART6_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART6_RX) /*!< Remap USART6 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 176 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 177 #define HAL_DMA1_CH5_USART7_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART7_RX) /*!< Remap USART7 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 178 #define HAL_DMA1_CH5_USART8_RX (uint32_t) (DMA1_CHANNEL5_RMP | DMA1_CSELR_CH5_USART8_RX) /*!< Remap USART8 Rx on DMA1 channel 5 */
jhon309 0:ac8863619623 179 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 180
jhon309 0:ac8863619623 181 #if !defined(STM32F030xC)
jhon309 0:ac8863619623 182 /* DMA1 - Channel 6 */
jhon309 0:ac8863619623 183 #define HAL_DMA1_CH6_DEFAULT (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 184 #define HAL_DMA1_CH6_I2C1_TX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_I2C1_TX) /*!< Remap I2C1 Tx on DMA1 channel 6 */
jhon309 0:ac8863619623 185 #define HAL_DMA1_CH6_SPI2_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_SPI2_RX) /*!< Remap SPI2 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 186 #define HAL_DMA1_CH6_TIM1_CH1 (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM1_CH1) /*!< Remap TIM1 channel 1 on DMA1 channel 6 */
jhon309 0:ac8863619623 187 #define HAL_DMA1_CH6_TIM1_CH2 (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM1_CH2) /*!< Remap TIM1 channel 2 on DMA1 channel 6 */
jhon309 0:ac8863619623 188 #define HAL_DMA1_CH6_TIM1_CH3 (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM1_CH3) /*!< Remap TIM1 channel 3 on DMA1 channel 6 */
jhon309 0:ac8863619623 189 #define HAL_DMA1_CH6_TIM3_CH1 (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM3_CH1) /*!< Remap TIM3 channel 1 on DMA1 channel 6 */
jhon309 0:ac8863619623 190 #define HAL_DMA1_CH6_TIM3_TRIG (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM3_TRIG) /*!< Remap TIM3 Trig on DMA1 channel 6 */
jhon309 0:ac8863619623 191 #define HAL_DMA1_CH6_TIM16_CH1 (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM16_CH1) /*!< Remap TIM16 channel 1 on DMA1 channel 6 */
jhon309 0:ac8863619623 192 #define HAL_DMA1_CH6_TIM16_UP (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_TIM16_UP) /*!< Remap TIM16 up on DMA1 channel 6 */
jhon309 0:ac8863619623 193 #define HAL_DMA1_CH6_USART1_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART1_RX) /*!< Remap USART1 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 194 #define HAL_DMA1_CH6_USART2_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART2_RX) /*!< Remap USART2 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 195 #define HAL_DMA1_CH6_USART3_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART3_RX) /*!< Remap USART3 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 196 #define HAL_DMA1_CH6_USART4_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART4_RX) /*!< Remap USART4 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 197 #define HAL_DMA1_CH6_USART5_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART5_RX) /*!< Remap USART5 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 198 #define HAL_DMA1_CH6_USART6_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART6_RX) /*!< Remap USART6 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 199 #define HAL_DMA1_CH6_USART7_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART7_RX) /*!< Remap USART7 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 200 #define HAL_DMA1_CH6_USART8_RX (uint32_t) (DMA1_CHANNEL6_RMP | DMA1_CSELR_CH6_USART8_RX) /*!< Remap USART8 Rx on DMA1 channel 6 */
jhon309 0:ac8863619623 201 /* DMA1 - Channel 7 */
jhon309 0:ac8863619623 202 #define HAL_DMA1_CH7_DEFAULT (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_DEFAULT) /*!< Default remap position for DMA1 */
jhon309 0:ac8863619623 203 #define HAL_DMA1_CH7_I2C1_RX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_I2C1_RX) /*!< Remap I2C1 Rx on DMA1 channel 7 */
jhon309 0:ac8863619623 204 #define HAL_DMA1_CH7_SPI2_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_SPI2_TX) /*!< Remap SPI2 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 205 #define HAL_DMA1_CH7_TIM2_CH2 (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_TIM2_CH2) /*!< Remap TIM2 channel 2 on DMA1 channel 7 */
jhon309 0:ac8863619623 206 #define HAL_DMA1_CH7_TIM2_CH4 (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_TIM2_CH4) /*!< Remap TIM2 channel 4 on DMA1 channel 7 */
jhon309 0:ac8863619623 207 #define HAL_DMA1_CH7_TIM17_CH1 (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_TIM17_CH1) /*!< Remap TIM17 channel 1 on DMA1 channel 7 */
jhon309 0:ac8863619623 208 #define HAL_DMA1_CH7_TIM17_UP (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_TIM17_UP) /*!< Remap TIM17 up on DMA1 channel 7 */
jhon309 0:ac8863619623 209 #define HAL_DMA1_CH7_USART1_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART1_TX) /*!< Remap USART1 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 210 #define HAL_DMA1_CH7_USART2_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART2_TX) /*!< Remap USART2 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 211 #define HAL_DMA1_CH7_USART3_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART3_TX) /*!< Remap USART3 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 212 #define HAL_DMA1_CH7_USART4_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART4_TX) /*!< Remap USART4 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 213 #define HAL_DMA1_CH7_USART5_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART5_TX) /*!< Remap USART5 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 214 #define HAL_DMA1_CH7_USART6_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART6_TX) /*!< Remap USART6 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 215 #define HAL_DMA1_CH7_USART7_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART7_TX) /*!< Remap USART7 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 216 #define HAL_DMA1_CH7_USART8_TX (uint32_t) (DMA1_CHANNEL7_RMP | DMA1_CSELR_CH7_USART8_TX) /*!< Remap USART8 Tx on DMA1 channel 7 */
jhon309 0:ac8863619623 217
jhon309 0:ac8863619623 218 /****************** DMA2 remap bit field definition********************/
jhon309 0:ac8863619623 219 /* DMA2 - Channel 1 */
jhon309 0:ac8863619623 220 #define HAL_DMA2_CH1_DEFAULT (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_DEFAULT) /*!< Default remap position for DMA2 */
jhon309 0:ac8863619623 221 #define HAL_DMA2_CH1_I2C2_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_I2C2_TX) /*!< Remap I2C2 TX on DMA2 channel 1 */
jhon309 0:ac8863619623 222 #define HAL_DMA2_CH1_USART1_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART1_TX) /*!< Remap USART1 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 223 #define HAL_DMA2_CH1_USART2_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART2_TX) /*!< Remap USART2 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 224 #define HAL_DMA2_CH1_USART3_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART3_TX) /*!< Remap USART3 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 225 #define HAL_DMA2_CH1_USART4_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART4_TX) /*!< Remap USART4 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 226 #define HAL_DMA2_CH1_USART5_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART5_TX) /*!< Remap USART5 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 227 #define HAL_DMA2_CH1_USART6_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART6_TX) /*!< Remap USART6 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 228 #define HAL_DMA2_CH1_USART7_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART7_TX) /*!< Remap USART7 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 229 #define HAL_DMA2_CH1_USART8_TX (uint32_t) (DMA2_CHANNEL1_RMP | DMA2_CSELR_CH1_USART8_TX) /*!< Remap USART8 Tx on DMA2 channel 1 */
jhon309 0:ac8863619623 230 /* DMA2 - Channel 2 */
jhon309 0:ac8863619623 231 #define HAL_DMA2_CH2_DEFAULT (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_DEFAULT) /*!< Default remap position for DMA2 */
jhon309 0:ac8863619623 232 #define HAL_DMA2_CH2_I2C2_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_I2C2_RX) /*!< Remap I2C2 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 233 #define HAL_DMA2_CH2_USART1_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART1_RX) /*!< Remap USART1 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 234 #define HAL_DMA2_CH2_USART2_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART2_RX) /*!< Remap USART2 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 235 #define HAL_DMA2_CH2_USART3_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART3_RX) /*!< Remap USART3 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 236 #define HAL_DMA2_CH2_USART4_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART4_RX) /*!< Remap USART4 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 237 #define HAL_DMA2_CH2_USART5_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART5_RX) /*!< Remap USART5 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 238 #define HAL_DMA2_CH2_USART6_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART6_RX) /*!< Remap USART6 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 239 #define HAL_DMA2_CH2_USART7_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART7_RX) /*!< Remap USART7 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 240 #define HAL_DMA2_CH2_USART8_RX (uint32_t) (DMA2_CHANNEL2_RMP | DMA2_CSELR_CH2_USART8_RX) /*!< Remap USART8 Rx on DMA2 channel 2 */
jhon309 0:ac8863619623 241 /* DMA2 - Channel 3 */
jhon309 0:ac8863619623 242 #define HAL_DMA2_CH3_DEFAULT (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_DEFAULT) /*!< Default remap position for DMA2 */
jhon309 0:ac8863619623 243 #define HAL_DMA2_CH3_TIM6_UP (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_TIM6_UP) /*!< Remap TIM6 up on DMA2 channel 3 */
jhon309 0:ac8863619623 244 #define HAL_DMA2_CH3_DAC_CH1 (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_DAC_CH1) /*!< Remap DAC channel 1 on DMA2 channel 3 */
jhon309 0:ac8863619623 245 #define HAL_DMA2_CH3_SPI1_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_SPI1_RX) /*!< Remap SPI1 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 246 #define HAL_DMA2_CH3_USART1_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART1_RX) /*!< Remap USART1 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 247 #define HAL_DMA2_CH3_USART2_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART2_RX) /*!< Remap USART2 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 248 #define HAL_DMA2_CH3_USART3_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART3_RX) /*!< Remap USART3 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 249 #define HAL_DMA2_CH3_USART4_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART4_RX) /*!< Remap USART4 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 250 #define HAL_DMA2_CH3_USART5_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART5_RX) /*!< Remap USART5 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 251 #define HAL_DMA2_CH3_USART6_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART6_RX) /*!< Remap USART6 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 252 #define HAL_DMA2_CH3_USART7_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART7_RX) /*!< Remap USART7 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 253 #define HAL_DMA2_CH3_USART8_RX (uint32_t) (DMA2_CHANNEL3_RMP | DMA2_CSELR_CH3_USART8_RX) /*!< Remap USART8 Rx on DMA2 channel 3 */
jhon309 0:ac8863619623 254 /* DMA2 - Channel 4 */
jhon309 0:ac8863619623 255 #define HAL_DMA2_CH4_DEFAULT (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_DEFAULT) /*!< Default remap position for DMA2 */
jhon309 0:ac8863619623 256 #define HAL_DMA2_CH4_TIM7_UP (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_TIM7_UP) /*!< Remap TIM7 up on DMA2 channel 4 */
jhon309 0:ac8863619623 257 #define HAL_DMA2_CH4_DAC_CH2 (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_DAC_CH2) /*!< Remap DAC channel 2 on DMA2 channel 4 */
jhon309 0:ac8863619623 258 #define HAL_DMA2_CH4_SPI1_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_SPI1_TX) /*!< Remap SPI1 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 259 #define HAL_DMA2_CH4_USART1_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART1_TX) /*!< Remap USART1 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 260 #define HAL_DMA2_CH4_USART2_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART2_TX) /*!< Remap USART2 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 261 #define HAL_DMA2_CH4_USART3_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART3_TX) /*!< Remap USART3 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 262 #define HAL_DMA2_CH4_USART4_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART4_TX) /*!< Remap USART4 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 263 #define HAL_DMA2_CH4_USART5_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART5_TX) /*!< Remap USART5 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 264 #define HAL_DMA2_CH4_USART6_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART6_TX) /*!< Remap USART6 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 265 #define HAL_DMA2_CH4_USART7_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART7_TX) /*!< Remap USART7 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 266 #define HAL_DMA2_CH4_USART8_TX (uint32_t) (DMA2_CHANNEL4_RMP | DMA2_CSELR_CH4_USART8_TX) /*!< Remap USART8 Tx on DMA2 channel 4 */
jhon309 0:ac8863619623 267 /* DMA2 - Channel 5 */
jhon309 0:ac8863619623 268 #define HAL_DMA2_CH5_DEFAULT (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_DEFAULT) /*!< Default remap position for DMA2 */
jhon309 0:ac8863619623 269 #define HAL_DMA2_CH5_ADC (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_ADC) /*!< Remap ADC on DMA2 channel 5 */
jhon309 0:ac8863619623 270 #define HAL_DMA2_CH5_USART1_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART1_TX) /*!< Remap USART1 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 271 #define HAL_DMA2_CH5_USART2_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART2_TX) /*!< Remap USART2 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 272 #define HAL_DMA2_CH5_USART3_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART3_TX) /*!< Remap USART3 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 273 #define HAL_DMA2_CH5_USART4_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART4_TX) /*!< Remap USART4 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 274 #define HAL_DMA2_CH5_USART5_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART5_TX) /*!< Remap USART5 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 275 #define HAL_DMA2_CH5_USART6_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART6_TX) /*!< Remap USART6 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 276 #define HAL_DMA2_CH5_USART7_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART7_TX) /*!< Remap USART7 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 277 #define HAL_DMA2_CH5_USART8_TX (uint32_t) (DMA2_CHANNEL5_RMP | DMA2_CSELR_CH5_USART8_TX) /*!< Remap USART8 Tx on DMA2 channel 5 */
jhon309 0:ac8863619623 278 #endif /* !defined(STM32F030xC) */
jhon309 0:ac8863619623 279
jhon309 0:ac8863619623 280 #if defined(STM32F091xC) || defined(STM32F098xx)
jhon309 0:ac8863619623 281 #define IS_HAL_DMA1_REMAP(REQUEST) (((REQUEST) == HAL_DMA1_CH1_DEFAULT) ||\
jhon309 0:ac8863619623 282 ((REQUEST) == HAL_DMA1_CH1_ADC) ||\
jhon309 0:ac8863619623 283 ((REQUEST) == HAL_DMA1_CH1_TIM17_CH1) ||\
jhon309 0:ac8863619623 284 ((REQUEST) == HAL_DMA1_CH1_TIM17_UP) ||\
jhon309 0:ac8863619623 285 ((REQUEST) == HAL_DMA1_CH1_USART1_RX) ||\
jhon309 0:ac8863619623 286 ((REQUEST) == HAL_DMA1_CH1_USART2_RX) ||\
jhon309 0:ac8863619623 287 ((REQUEST) == HAL_DMA1_CH1_USART3_RX) ||\
jhon309 0:ac8863619623 288 ((REQUEST) == HAL_DMA1_CH1_USART4_RX) ||\
jhon309 0:ac8863619623 289 ((REQUEST) == HAL_DMA1_CH1_USART5_RX) ||\
jhon309 0:ac8863619623 290 ((REQUEST) == HAL_DMA1_CH1_USART6_RX) ||\
jhon309 0:ac8863619623 291 ((REQUEST) == HAL_DMA1_CH1_USART7_RX) ||\
jhon309 0:ac8863619623 292 ((REQUEST) == HAL_DMA1_CH1_USART8_RX) ||\
jhon309 0:ac8863619623 293 ((REQUEST) == HAL_DMA1_CH2_DEFAULT) ||\
jhon309 0:ac8863619623 294 ((REQUEST) == HAL_DMA1_CH2_ADC) ||\
jhon309 0:ac8863619623 295 ((REQUEST) == HAL_DMA1_CH2_I2C1_TX) ||\
jhon309 0:ac8863619623 296 ((REQUEST) == HAL_DMA1_CH2_SPI1_RX) ||\
jhon309 0:ac8863619623 297 ((REQUEST) == HAL_DMA1_CH2_TIM1_CH1) ||\
jhon309 0:ac8863619623 298 ((REQUEST) == HAL_DMA1_CH2_I2C1_TX) ||\
jhon309 0:ac8863619623 299 ((REQUEST) == HAL_DMA1_CH2_TIM17_CH1) ||\
jhon309 0:ac8863619623 300 ((REQUEST) == HAL_DMA1_CH2_TIM17_UP) ||\
jhon309 0:ac8863619623 301 ((REQUEST) == HAL_DMA1_CH2_USART1_TX) ||\
jhon309 0:ac8863619623 302 ((REQUEST) == HAL_DMA1_CH2_USART2_TX) ||\
jhon309 0:ac8863619623 303 ((REQUEST) == HAL_DMA1_CH2_USART3_TX) ||\
jhon309 0:ac8863619623 304 ((REQUEST) == HAL_DMA1_CH2_USART4_TX) ||\
jhon309 0:ac8863619623 305 ((REQUEST) == HAL_DMA1_CH2_USART5_TX) ||\
jhon309 0:ac8863619623 306 ((REQUEST) == HAL_DMA1_CH2_USART6_TX) ||\
jhon309 0:ac8863619623 307 ((REQUEST) == HAL_DMA1_CH2_USART7_TX) ||\
jhon309 0:ac8863619623 308 ((REQUEST) == HAL_DMA1_CH2_USART8_TX) ||\
jhon309 0:ac8863619623 309 ((REQUEST) == HAL_DMA1_CH3_DEFAULT) ||\
jhon309 0:ac8863619623 310 ((REQUEST) == HAL_DMA1_CH3_TIM6_UP) ||\
jhon309 0:ac8863619623 311 ((REQUEST) == HAL_DMA1_CH3_DAC_CH1) ||\
jhon309 0:ac8863619623 312 ((REQUEST) == HAL_DMA1_CH3_I2C1_RX) ||\
jhon309 0:ac8863619623 313 ((REQUEST) == HAL_DMA1_CH3_SPI1_TX) ||\
jhon309 0:ac8863619623 314 ((REQUEST) == HAL_DMA1_CH3_TIM1_CH2) ||\
jhon309 0:ac8863619623 315 ((REQUEST) == HAL_DMA1_CH3_TIM2_CH2) ||\
jhon309 0:ac8863619623 316 ((REQUEST) == HAL_DMA1_CH3_TIM16_CH1) ||\
jhon309 0:ac8863619623 317 ((REQUEST) == HAL_DMA1_CH3_TIM16_UP) ||\
jhon309 0:ac8863619623 318 ((REQUEST) == HAL_DMA1_CH3_USART1_RX) ||\
jhon309 0:ac8863619623 319 ((REQUEST) == HAL_DMA1_CH3_USART2_RX) ||\
jhon309 0:ac8863619623 320 ((REQUEST) == HAL_DMA1_CH3_USART3_RX) ||\
jhon309 0:ac8863619623 321 ((REQUEST) == HAL_DMA1_CH3_USART4_RX) ||\
jhon309 0:ac8863619623 322 ((REQUEST) == HAL_DMA1_CH3_USART5_RX) ||\
jhon309 0:ac8863619623 323 ((REQUEST) == HAL_DMA1_CH3_USART6_RX) ||\
jhon309 0:ac8863619623 324 ((REQUEST) == HAL_DMA1_CH3_USART7_RX) ||\
jhon309 0:ac8863619623 325 ((REQUEST) == HAL_DMA1_CH3_USART8_RX) ||\
jhon309 0:ac8863619623 326 ((REQUEST) == HAL_DMA1_CH4_DEFAULT) ||\
jhon309 0:ac8863619623 327 ((REQUEST) == HAL_DMA1_CH4_TIM7_UP) ||\
jhon309 0:ac8863619623 328 ((REQUEST) == HAL_DMA1_CH4_DAC_CH2) ||\
jhon309 0:ac8863619623 329 ((REQUEST) == HAL_DMA1_CH4_I2C2_TX) ||\
jhon309 0:ac8863619623 330 ((REQUEST) == HAL_DMA1_CH4_SPI2_RX) ||\
jhon309 0:ac8863619623 331 ((REQUEST) == HAL_DMA1_CH4_TIM2_CH4) ||\
jhon309 0:ac8863619623 332 ((REQUEST) == HAL_DMA1_CH4_TIM3_CH1) ||\
jhon309 0:ac8863619623 333 ((REQUEST) == HAL_DMA1_CH4_TIM3_TRIG) ||\
jhon309 0:ac8863619623 334 ((REQUEST) == HAL_DMA1_CH4_TIM16_CH1) ||\
jhon309 0:ac8863619623 335 ((REQUEST) == HAL_DMA1_CH4_TIM16_UP) ||\
jhon309 0:ac8863619623 336 ((REQUEST) == HAL_DMA1_CH4_USART1_TX) ||\
jhon309 0:ac8863619623 337 ((REQUEST) == HAL_DMA1_CH4_USART2_TX) ||\
jhon309 0:ac8863619623 338 ((REQUEST) == HAL_DMA1_CH4_USART3_TX) ||\
jhon309 0:ac8863619623 339 ((REQUEST) == HAL_DMA1_CH4_USART4_TX) ||\
jhon309 0:ac8863619623 340 ((REQUEST) == HAL_DMA1_CH4_USART5_TX) ||\
jhon309 0:ac8863619623 341 ((REQUEST) == HAL_DMA1_CH4_USART6_TX) ||\
jhon309 0:ac8863619623 342 ((REQUEST) == HAL_DMA1_CH4_USART7_TX) ||\
jhon309 0:ac8863619623 343 ((REQUEST) == HAL_DMA1_CH4_USART8_TX) ||\
jhon309 0:ac8863619623 344 ((REQUEST) == HAL_DMA1_CH5_DEFAULT) ||\
jhon309 0:ac8863619623 345 ((REQUEST) == HAL_DMA1_CH5_I2C2_RX) ||\
jhon309 0:ac8863619623 346 ((REQUEST) == HAL_DMA1_CH5_SPI2_TX) ||\
jhon309 0:ac8863619623 347 ((REQUEST) == HAL_DMA1_CH5_TIM1_CH3) ||\
jhon309 0:ac8863619623 348 ((REQUEST) == HAL_DMA1_CH5_USART1_RX) ||\
jhon309 0:ac8863619623 349 ((REQUEST) == HAL_DMA1_CH5_USART2_RX) ||\
jhon309 0:ac8863619623 350 ((REQUEST) == HAL_DMA1_CH5_USART3_RX) ||\
jhon309 0:ac8863619623 351 ((REQUEST) == HAL_DMA1_CH5_USART4_RX) ||\
jhon309 0:ac8863619623 352 ((REQUEST) == HAL_DMA1_CH5_USART5_RX) ||\
jhon309 0:ac8863619623 353 ((REQUEST) == HAL_DMA1_CH5_USART6_RX) ||\
jhon309 0:ac8863619623 354 ((REQUEST) == HAL_DMA1_CH5_USART7_RX) ||\
jhon309 0:ac8863619623 355 ((REQUEST) == HAL_DMA1_CH5_USART8_RX) ||\
jhon309 0:ac8863619623 356 ((REQUEST) == HAL_DMA1_CH6_DEFAULT) ||\
jhon309 0:ac8863619623 357 ((REQUEST) == HAL_DMA1_CH6_I2C1_TX) ||\
jhon309 0:ac8863619623 358 ((REQUEST) == HAL_DMA1_CH6_SPI2_RX) ||\
jhon309 0:ac8863619623 359 ((REQUEST) == HAL_DMA1_CH6_TIM1_CH1) ||\
jhon309 0:ac8863619623 360 ((REQUEST) == HAL_DMA1_CH6_TIM1_CH2) ||\
jhon309 0:ac8863619623 361 ((REQUEST) == HAL_DMA1_CH6_TIM1_CH3) ||\
jhon309 0:ac8863619623 362 ((REQUEST) == HAL_DMA1_CH6_TIM3_CH1) ||\
jhon309 0:ac8863619623 363 ((REQUEST) == HAL_DMA1_CH6_TIM3_TRIG) ||\
jhon309 0:ac8863619623 364 ((REQUEST) == HAL_DMA1_CH6_TIM16_CH1) ||\
jhon309 0:ac8863619623 365 ((REQUEST) == HAL_DMA1_CH6_TIM16_UP) ||\
jhon309 0:ac8863619623 366 ((REQUEST) == HAL_DMA1_CH6_USART1_RX) ||\
jhon309 0:ac8863619623 367 ((REQUEST) == HAL_DMA1_CH6_USART2_RX) ||\
jhon309 0:ac8863619623 368 ((REQUEST) == HAL_DMA1_CH6_USART3_RX) ||\
jhon309 0:ac8863619623 369 ((REQUEST) == HAL_DMA1_CH6_USART4_RX) ||\
jhon309 0:ac8863619623 370 ((REQUEST) == HAL_DMA1_CH6_USART5_RX) ||\
jhon309 0:ac8863619623 371 ((REQUEST) == HAL_DMA1_CH6_USART6_RX) ||\
jhon309 0:ac8863619623 372 ((REQUEST) == HAL_DMA1_CH6_USART7_RX) ||\
jhon309 0:ac8863619623 373 ((REQUEST) == HAL_DMA1_CH6_USART8_RX) ||\
jhon309 0:ac8863619623 374 ((REQUEST) == HAL_DMA1_CH7_DEFAULT) ||\
jhon309 0:ac8863619623 375 ((REQUEST) == HAL_DMA1_CH7_I2C1_RX) ||\
jhon309 0:ac8863619623 376 ((REQUEST) == HAL_DMA1_CH7_SPI2_TX) ||\
jhon309 0:ac8863619623 377 ((REQUEST) == HAL_DMA1_CH7_TIM2_CH2) ||\
jhon309 0:ac8863619623 378 ((REQUEST) == HAL_DMA1_CH7_TIM2_CH4) ||\
jhon309 0:ac8863619623 379 ((REQUEST) == HAL_DMA1_CH7_TIM17_CH1) ||\
jhon309 0:ac8863619623 380 ((REQUEST) == HAL_DMA1_CH7_TIM17_UP) ||\
jhon309 0:ac8863619623 381 ((REQUEST) == HAL_DMA1_CH7_USART1_TX) ||\
jhon309 0:ac8863619623 382 ((REQUEST) == HAL_DMA1_CH7_USART2_TX) ||\
jhon309 0:ac8863619623 383 ((REQUEST) == HAL_DMA1_CH7_USART3_TX) ||\
jhon309 0:ac8863619623 384 ((REQUEST) == HAL_DMA1_CH7_USART4_TX) ||\
jhon309 0:ac8863619623 385 ((REQUEST) == HAL_DMA1_CH7_USART5_TX) ||\
jhon309 0:ac8863619623 386 ((REQUEST) == HAL_DMA1_CH7_USART6_TX) ||\
jhon309 0:ac8863619623 387 ((REQUEST) == HAL_DMA1_CH7_USART7_TX) ||\
jhon309 0:ac8863619623 388 ((REQUEST) == HAL_DMA1_CH7_USART8_TX))
jhon309 0:ac8863619623 389
jhon309 0:ac8863619623 390 #define IS_HAL_DMA2_REMAP(REQUEST) (((REQUEST) == HAL_DMA2_CH1_DEFAULT) ||\
jhon309 0:ac8863619623 391 ((REQUEST) == HAL_DMA2_CH1_I2C2_TX) ||\
jhon309 0:ac8863619623 392 ((REQUEST) == HAL_DMA2_CH1_USART1_TX) ||\
jhon309 0:ac8863619623 393 ((REQUEST) == HAL_DMA2_CH1_USART2_TX) ||\
jhon309 0:ac8863619623 394 ((REQUEST) == HAL_DMA2_CH1_USART3_TX) ||\
jhon309 0:ac8863619623 395 ((REQUEST) == HAL_DMA2_CH1_USART4_TX) ||\
jhon309 0:ac8863619623 396 ((REQUEST) == HAL_DMA2_CH1_USART5_TX) ||\
jhon309 0:ac8863619623 397 ((REQUEST) == HAL_DMA2_CH1_USART6_TX) ||\
jhon309 0:ac8863619623 398 ((REQUEST) == HAL_DMA2_CH1_USART7_TX) ||\
jhon309 0:ac8863619623 399 ((REQUEST) == HAL_DMA2_CH1_USART8_TX) ||\
jhon309 0:ac8863619623 400 ((REQUEST) == HAL_DMA2_CH2_DEFAULT) ||\
jhon309 0:ac8863619623 401 ((REQUEST) == HAL_DMA2_CH2_I2C2_RX) ||\
jhon309 0:ac8863619623 402 ((REQUEST) == HAL_DMA2_CH2_USART1_RX) ||\
jhon309 0:ac8863619623 403 ((REQUEST) == HAL_DMA2_CH2_USART2_RX) ||\
jhon309 0:ac8863619623 404 ((REQUEST) == HAL_DMA2_CH2_USART3_RX) ||\
jhon309 0:ac8863619623 405 ((REQUEST) == HAL_DMA2_CH2_USART4_RX) ||\
jhon309 0:ac8863619623 406 ((REQUEST) == HAL_DMA2_CH2_USART5_RX) ||\
jhon309 0:ac8863619623 407 ((REQUEST) == HAL_DMA2_CH2_USART6_RX) ||\
jhon309 0:ac8863619623 408 ((REQUEST) == HAL_DMA2_CH2_USART7_RX) ||\
jhon309 0:ac8863619623 409 ((REQUEST) == HAL_DMA2_CH2_USART8_RX) ||\
jhon309 0:ac8863619623 410 ((REQUEST) == HAL_DMA2_CH3_DEFAULT) ||\
jhon309 0:ac8863619623 411 ((REQUEST) == HAL_DMA2_CH3_TIM6_UP) ||\
jhon309 0:ac8863619623 412 ((REQUEST) == HAL_DMA2_CH3_DAC_CH1) ||\
jhon309 0:ac8863619623 413 ((REQUEST) == HAL_DMA2_CH3_SPI1_RX) ||\
jhon309 0:ac8863619623 414 ((REQUEST) == HAL_DMA2_CH3_USART1_RX) ||\
jhon309 0:ac8863619623 415 ((REQUEST) == HAL_DMA2_CH3_USART2_RX) ||\
jhon309 0:ac8863619623 416 ((REQUEST) == HAL_DMA2_CH3_USART3_RX) ||\
jhon309 0:ac8863619623 417 ((REQUEST) == HAL_DMA2_CH3_USART4_RX) ||\
jhon309 0:ac8863619623 418 ((REQUEST) == HAL_DMA2_CH3_USART5_RX) ||\
jhon309 0:ac8863619623 419 ((REQUEST) == HAL_DMA2_CH3_USART6_RX) ||\
jhon309 0:ac8863619623 420 ((REQUEST) == HAL_DMA2_CH3_USART7_RX) ||\
jhon309 0:ac8863619623 421 ((REQUEST) == HAL_DMA2_CH3_USART8_RX) ||\
jhon309 0:ac8863619623 422 ((REQUEST) == HAL_DMA2_CH4_DEFAULT) ||\
jhon309 0:ac8863619623 423 ((REQUEST) == HAL_DMA2_CH4_TIM7_UP) ||\
jhon309 0:ac8863619623 424 ((REQUEST) == HAL_DMA2_CH4_DAC_CH2) ||\
jhon309 0:ac8863619623 425 ((REQUEST) == HAL_DMA2_CH4_SPI1_TX) ||\
jhon309 0:ac8863619623 426 ((REQUEST) == HAL_DMA2_CH4_USART1_TX) ||\
jhon309 0:ac8863619623 427 ((REQUEST) == HAL_DMA2_CH4_USART2_TX) ||\
jhon309 0:ac8863619623 428 ((REQUEST) == HAL_DMA2_CH4_USART3_TX) ||\
jhon309 0:ac8863619623 429 ((REQUEST) == HAL_DMA2_CH4_USART4_TX) ||\
jhon309 0:ac8863619623 430 ((REQUEST) == HAL_DMA2_CH4_USART5_TX) ||\
jhon309 0:ac8863619623 431 ((REQUEST) == HAL_DMA2_CH4_USART6_TX) ||\
jhon309 0:ac8863619623 432 ((REQUEST) == HAL_DMA2_CH4_USART7_TX) ||\
jhon309 0:ac8863619623 433 ((REQUEST) == HAL_DMA2_CH4_USART8_TX) ||\
jhon309 0:ac8863619623 434 ((REQUEST) == HAL_DMA2_CH5_DEFAULT) ||\
jhon309 0:ac8863619623 435 ((REQUEST) == HAL_DMA2_CH5_ADC) ||\
jhon309 0:ac8863619623 436 ((REQUEST) == HAL_DMA2_CH5_USART1_TX) ||\
jhon309 0:ac8863619623 437 ((REQUEST) == HAL_DMA2_CH5_USART2_TX) ||\
jhon309 0:ac8863619623 438 ((REQUEST) == HAL_DMA2_CH5_USART3_TX) ||\
jhon309 0:ac8863619623 439 ((REQUEST) == HAL_DMA2_CH5_USART4_TX) ||\
jhon309 0:ac8863619623 440 ((REQUEST) == HAL_DMA2_CH5_USART5_TX) ||\
jhon309 0:ac8863619623 441 ((REQUEST) == HAL_DMA2_CH5_USART6_TX) ||\
jhon309 0:ac8863619623 442 ((REQUEST) == HAL_DMA2_CH5_USART7_TX) ||\
jhon309 0:ac8863619623 443 ((REQUEST) == HAL_DMA2_CH5_USART8_TX ))
jhon309 0:ac8863619623 444 #endif /* STM32F091xC || STM32F098xx */
jhon309 0:ac8863619623 445
jhon309 0:ac8863619623 446 #if defined(STM32F030xC)
jhon309 0:ac8863619623 447 #define IS_HAL_DMA1_REMAP(REQUEST) (((REQUEST) == HAL_DMA1_CH1_DEFAULT) ||\
jhon309 0:ac8863619623 448 ((REQUEST) == HAL_DMA1_CH1_ADC) ||\
jhon309 0:ac8863619623 449 ((REQUEST) == HAL_DMA1_CH1_TIM17_CH1) ||\
jhon309 0:ac8863619623 450 ((REQUEST) == HAL_DMA1_CH1_TIM17_UP) ||\
jhon309 0:ac8863619623 451 ((REQUEST) == HAL_DMA1_CH1_USART1_RX) ||\
jhon309 0:ac8863619623 452 ((REQUEST) == HAL_DMA1_CH1_USART2_RX) ||\
jhon309 0:ac8863619623 453 ((REQUEST) == HAL_DMA1_CH1_USART3_RX) ||\
jhon309 0:ac8863619623 454 ((REQUEST) == HAL_DMA1_CH1_USART4_RX) ||\
jhon309 0:ac8863619623 455 ((REQUEST) == HAL_DMA1_CH1_USART5_RX) ||\
jhon309 0:ac8863619623 456 ((REQUEST) == HAL_DMA1_CH1_USART6_RX) ||\
jhon309 0:ac8863619623 457 ((REQUEST) == HAL_DMA1_CH2_DEFAULT) ||\
jhon309 0:ac8863619623 458 ((REQUEST) == HAL_DMA1_CH2_ADC) ||\
jhon309 0:ac8863619623 459 ((REQUEST) == HAL_DMA1_CH2_I2C1_TX) ||\
jhon309 0:ac8863619623 460 ((REQUEST) == HAL_DMA1_CH2_SPI1_RX) ||\
jhon309 0:ac8863619623 461 ((REQUEST) == HAL_DMA1_CH2_TIM1_CH1) ||\
jhon309 0:ac8863619623 462 ((REQUEST) == HAL_DMA1_CH2_I2C1_TX) ||\
jhon309 0:ac8863619623 463 ((REQUEST) == HAL_DMA1_CH2_TIM17_CH1) ||\
jhon309 0:ac8863619623 464 ((REQUEST) == HAL_DMA1_CH2_TIM17_UP) ||\
jhon309 0:ac8863619623 465 ((REQUEST) == HAL_DMA1_CH2_USART1_TX) ||\
jhon309 0:ac8863619623 466 ((REQUEST) == HAL_DMA1_CH2_USART2_TX) ||\
jhon309 0:ac8863619623 467 ((REQUEST) == HAL_DMA1_CH2_USART3_TX) ||\
jhon309 0:ac8863619623 468 ((REQUEST) == HAL_DMA1_CH2_USART4_TX) ||\
jhon309 0:ac8863619623 469 ((REQUEST) == HAL_DMA1_CH2_USART5_TX) ||\
jhon309 0:ac8863619623 470 ((REQUEST) == HAL_DMA1_CH2_USART6_TX) ||\
jhon309 0:ac8863619623 471 ((REQUEST) == HAL_DMA1_CH3_DEFAULT) ||\
jhon309 0:ac8863619623 472 ((REQUEST) == HAL_DMA1_CH3_TIM6_UP) ||\
jhon309 0:ac8863619623 473 ((REQUEST) == HAL_DMA1_CH3_I2C1_RX) ||\
jhon309 0:ac8863619623 474 ((REQUEST) == HAL_DMA1_CH3_SPI1_TX) ||\
jhon309 0:ac8863619623 475 ((REQUEST) == HAL_DMA1_CH3_TIM1_CH2) ||\
jhon309 0:ac8863619623 476 ((REQUEST) == HAL_DMA1_CH3_TIM16_CH1) ||\
jhon309 0:ac8863619623 477 ((REQUEST) == HAL_DMA1_CH3_TIM16_UP) ||\
jhon309 0:ac8863619623 478 ((REQUEST) == HAL_DMA1_CH3_USART1_RX) ||\
jhon309 0:ac8863619623 479 ((REQUEST) == HAL_DMA1_CH3_USART2_RX) ||\
jhon309 0:ac8863619623 480 ((REQUEST) == HAL_DMA1_CH3_USART3_RX) ||\
jhon309 0:ac8863619623 481 ((REQUEST) == HAL_DMA1_CH3_USART4_RX) ||\
jhon309 0:ac8863619623 482 ((REQUEST) == HAL_DMA1_CH3_USART5_RX) ||\
jhon309 0:ac8863619623 483 ((REQUEST) == HAL_DMA1_CH3_USART6_RX) ||\
jhon309 0:ac8863619623 484 ((REQUEST) == HAL_DMA1_CH4_DEFAULT) ||\
jhon309 0:ac8863619623 485 ((REQUEST) == HAL_DMA1_CH4_TIM7_UP) ||\
jhon309 0:ac8863619623 486 ((REQUEST) == HAL_DMA1_CH4_I2C2_TX) ||\
jhon309 0:ac8863619623 487 ((REQUEST) == HAL_DMA1_CH4_SPI2_RX) ||\
jhon309 0:ac8863619623 488 ((REQUEST) == HAL_DMA1_CH4_TIM3_CH1) ||\
jhon309 0:ac8863619623 489 ((REQUEST) == HAL_DMA1_CH4_TIM3_TRIG) ||\
jhon309 0:ac8863619623 490 ((REQUEST) == HAL_DMA1_CH4_TIM16_CH1) ||\
jhon309 0:ac8863619623 491 ((REQUEST) == HAL_DMA1_CH4_TIM16_UP) ||\
jhon309 0:ac8863619623 492 ((REQUEST) == HAL_DMA1_CH4_USART1_TX) ||\
jhon309 0:ac8863619623 493 ((REQUEST) == HAL_DMA1_CH4_USART2_TX) ||\
jhon309 0:ac8863619623 494 ((REQUEST) == HAL_DMA1_CH4_USART3_TX) ||\
jhon309 0:ac8863619623 495 ((REQUEST) == HAL_DMA1_CH4_USART4_TX) ||\
jhon309 0:ac8863619623 496 ((REQUEST) == HAL_DMA1_CH4_USART5_TX) ||\
jhon309 0:ac8863619623 497 ((REQUEST) == HAL_DMA1_CH4_USART6_TX) ||\
jhon309 0:ac8863619623 498 ((REQUEST) == HAL_DMA1_CH5_DEFAULT) ||\
jhon309 0:ac8863619623 499 ((REQUEST) == HAL_DMA1_CH5_I2C2_RX) ||\
jhon309 0:ac8863619623 500 ((REQUEST) == HAL_DMA1_CH5_SPI2_TX) ||\
jhon309 0:ac8863619623 501 ((REQUEST) == HAL_DMA1_CH5_TIM1_CH3) ||\
jhon309 0:ac8863619623 502 ((REQUEST) == HAL_DMA1_CH5_USART1_RX) ||\
jhon309 0:ac8863619623 503 ((REQUEST) == HAL_DMA1_CH5_USART2_RX) ||\
jhon309 0:ac8863619623 504 ((REQUEST) == HAL_DMA1_CH5_USART3_RX) ||\
jhon309 0:ac8863619623 505 ((REQUEST) == HAL_DMA1_CH5_USART4_RX) ||\
jhon309 0:ac8863619623 506 ((REQUEST) == HAL_DMA1_CH5_USART5_RX) ||\
jhon309 0:ac8863619623 507 ((REQUEST) == HAL_DMA1_CH5_USART6_RX))
jhon309 0:ac8863619623 508 #endif /* STM32F030xC */
jhon309 0:ac8863619623 509
jhon309 0:ac8863619623 510 /**
jhon309 0:ac8863619623 511 * @}
jhon309 0:ac8863619623 512 */
jhon309 0:ac8863619623 513 #endif /* STM32F091xC || STM32F098xx || STM32F030xC */
jhon309 0:ac8863619623 514
jhon309 0:ac8863619623 515 /* Exported macros -----------------------------------------------------------*/
jhon309 0:ac8863619623 516
jhon309 0:ac8863619623 517 /** @defgroup DMAEx_Exported_Macros DMAEx Exported Macros
jhon309 0:ac8863619623 518 * @{
jhon309 0:ac8863619623 519 */
jhon309 0:ac8863619623 520 /* Interrupt & Flag management */
jhon309 0:ac8863619623 521
jhon309 0:ac8863619623 522 #if defined(STM32F071xB) || defined(STM32F072xB) || defined(STM32F078xx)
jhon309 0:ac8863619623 523 /**
jhon309 0:ac8863619623 524 * @brief Returns the current DMA Channel transfer complete flag.
jhon309 0:ac8863619623 525 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 526 * @retval The specified transfer complete flag index.
jhon309 0:ac8863619623 527 */
jhon309 0:ac8863619623 528 #define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \
jhon309 0:ac8863619623 529 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\
jhon309 0:ac8863619623 530 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\
jhon309 0:ac8863619623 531 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\
jhon309 0:ac8863619623 532 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\
jhon309 0:ac8863619623 533 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TC5 :\
jhon309 0:ac8863619623 534 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TC6 :\
jhon309 0:ac8863619623 535 DMA_FLAG_TC7)
jhon309 0:ac8863619623 536
jhon309 0:ac8863619623 537 /**
jhon309 0:ac8863619623 538 * @brief Returns the current DMA Channel half transfer complete flag.
jhon309 0:ac8863619623 539 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 540 * @retval The specified half transfer complete flag index.
jhon309 0:ac8863619623 541 */
jhon309 0:ac8863619623 542 #define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\
jhon309 0:ac8863619623 543 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\
jhon309 0:ac8863619623 544 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\
jhon309 0:ac8863619623 545 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\
jhon309 0:ac8863619623 546 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\
jhon309 0:ac8863619623 547 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_HT5 :\
jhon309 0:ac8863619623 548 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_HT6 :\
jhon309 0:ac8863619623 549 DMA_FLAG_HT7)
jhon309 0:ac8863619623 550
jhon309 0:ac8863619623 551 /**
jhon309 0:ac8863619623 552 * @brief Returns the current DMA Channel transfer error flag.
jhon309 0:ac8863619623 553 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 554 * @retval The specified transfer error flag index.
jhon309 0:ac8863619623 555 */
jhon309 0:ac8863619623 556 #define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\
jhon309 0:ac8863619623 557 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\
jhon309 0:ac8863619623 558 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\
jhon309 0:ac8863619623 559 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\
jhon309 0:ac8863619623 560 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\
jhon309 0:ac8863619623 561 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TE5 :\
jhon309 0:ac8863619623 562 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TE6 :\
jhon309 0:ac8863619623 563 DMA_FLAG_TE7)
jhon309 0:ac8863619623 564
jhon309 0:ac8863619623 565 /**
jhon309 0:ac8863619623 566 * @brief Get the DMA Channel pending flags.
jhon309 0:ac8863619623 567 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 568 * @param __FLAG__: Get the specified flag.
jhon309 0:ac8863619623 569 * This parameter can be any combination of the following values:
jhon309 0:ac8863619623 570 * @arg DMA_FLAG_TCx: Transfer complete flag
jhon309 0:ac8863619623 571 * @arg DMA_FLAG_HTx: Half transfer complete flag
jhon309 0:ac8863619623 572 * @arg DMA_FLAG_TEx: Transfer error flag
jhon309 0:ac8863619623 573 * Where x can be 1_7 to select the DMA Channel flag.
jhon309 0:ac8863619623 574 * @retval The state of FLAG (SET or RESET).
jhon309 0:ac8863619623 575 */
jhon309 0:ac8863619623 576
jhon309 0:ac8863619623 577 #define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__) (DMA1->ISR & (__FLAG__))
jhon309 0:ac8863619623 578
jhon309 0:ac8863619623 579 /**
jhon309 0:ac8863619623 580 * @brief Clears the DMA Channel pending flags.
jhon309 0:ac8863619623 581 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 582 * @param __FLAG__: specifies the flag to clear.
jhon309 0:ac8863619623 583 * This parameter can be any combination of the following values:
jhon309 0:ac8863619623 584 * @arg DMA_FLAG_TCx: Transfer complete flag
jhon309 0:ac8863619623 585 * @arg DMA_FLAG_HTx: Half transfer complete flag
jhon309 0:ac8863619623 586 * @arg DMA_FLAG_TEx: Transfer error flag
jhon309 0:ac8863619623 587 * Where x can be 1_7 to select the DMA Channel flag.
jhon309 0:ac8863619623 588 * @retval None
jhon309 0:ac8863619623 589 */
jhon309 0:ac8863619623 590 #define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) (DMA1->IFCR = (__FLAG__))
jhon309 0:ac8863619623 591
jhon309 0:ac8863619623 592 #elif defined(STM32F091xC) || defined(STM32F098xx)
jhon309 0:ac8863619623 593 /**
jhon309 0:ac8863619623 594 * @brief Returns the current DMA Channel transfer complete flag.
jhon309 0:ac8863619623 595 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 596 * @retval The specified transfer complete flag index.
jhon309 0:ac8863619623 597 */
jhon309 0:ac8863619623 598 #define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \
jhon309 0:ac8863619623 599 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\
jhon309 0:ac8863619623 600 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\
jhon309 0:ac8863619623 601 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\
jhon309 0:ac8863619623 602 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\
jhon309 0:ac8863619623 603 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TC5 :\
jhon309 0:ac8863619623 604 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TC6 :\
jhon309 0:ac8863619623 605 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_TC7 :\
jhon309 0:ac8863619623 606 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_TC1 :\
jhon309 0:ac8863619623 607 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_TC2 :\
jhon309 0:ac8863619623 608 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_TC3 :\
jhon309 0:ac8863619623 609 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_TC4 :\
jhon309 0:ac8863619623 610 DMA_FLAG_TC5)
jhon309 0:ac8863619623 611
jhon309 0:ac8863619623 612 /**
jhon309 0:ac8863619623 613 * @brief Returns the current DMA Channel half transfer complete flag.
jhon309 0:ac8863619623 614 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 615 * @retval The specified half transfer complete flag index.
jhon309 0:ac8863619623 616 */
jhon309 0:ac8863619623 617 #define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\
jhon309 0:ac8863619623 618 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\
jhon309 0:ac8863619623 619 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\
jhon309 0:ac8863619623 620 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\
jhon309 0:ac8863619623 621 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\
jhon309 0:ac8863619623 622 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_HT5 :\
jhon309 0:ac8863619623 623 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_HT6 :\
jhon309 0:ac8863619623 624 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_HT7 :\
jhon309 0:ac8863619623 625 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_HT1 :\
jhon309 0:ac8863619623 626 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_HT2 :\
jhon309 0:ac8863619623 627 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_HT3 :\
jhon309 0:ac8863619623 628 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_HT4 :\
jhon309 0:ac8863619623 629 DMA_FLAG_HT5)
jhon309 0:ac8863619623 630
jhon309 0:ac8863619623 631 /**
jhon309 0:ac8863619623 632 * @brief Returns the current DMA Channel transfer error flag.
jhon309 0:ac8863619623 633 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 634 * @retval The specified transfer error flag index.
jhon309 0:ac8863619623 635 */
jhon309 0:ac8863619623 636 #define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\
jhon309 0:ac8863619623 637 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\
jhon309 0:ac8863619623 638 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\
jhon309 0:ac8863619623 639 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\
jhon309 0:ac8863619623 640 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\
jhon309 0:ac8863619623 641 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TE5 :\
jhon309 0:ac8863619623 642 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TE6 :\
jhon309 0:ac8863619623 643 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_TE7 :\
jhon309 0:ac8863619623 644 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_TE1 :\
jhon309 0:ac8863619623 645 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_TE2 :\
jhon309 0:ac8863619623 646 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_TE3 :\
jhon309 0:ac8863619623 647 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_TE4 :\
jhon309 0:ac8863619623 648 DMA_FLAG_TE5)
jhon309 0:ac8863619623 649
jhon309 0:ac8863619623 650 /**
jhon309 0:ac8863619623 651 * @brief Get the DMA Channel pending flags.
jhon309 0:ac8863619623 652 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 653 * @param __FLAG__: Get the specified flag.
jhon309 0:ac8863619623 654 * This parameter can be any combination of the following values:
jhon309 0:ac8863619623 655 * @arg DMA_FLAG_TCx: Transfer complete flag
jhon309 0:ac8863619623 656 * @arg DMA_FLAG_HTx: Half transfer complete flag
jhon309 0:ac8863619623 657 * @arg DMA_FLAG_TEx: Transfer error flag
jhon309 0:ac8863619623 658 * Where x can be 0_4, 1_5, 2_6 or 3_7 to select the DMA Channel flag.
jhon309 0:ac8863619623 659 * @retval The state of FLAG (SET or RESET).
jhon309 0:ac8863619623 660 */
jhon309 0:ac8863619623 661
jhon309 0:ac8863619623 662 #define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__)\
jhon309 0:ac8863619623 663 (((uint32_t)((__HANDLE__)->Instance) > (uint32_t)DMA1_Channel7)? (DMA2->ISR & (__FLAG__)) :\
jhon309 0:ac8863619623 664 (DMA1->ISR & (__FLAG__)))
jhon309 0:ac8863619623 665
jhon309 0:ac8863619623 666 /**
jhon309 0:ac8863619623 667 * @brief Clears the DMA Channel pending flags.
jhon309 0:ac8863619623 668 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 669 * @param __FLAG__: specifies the flag to clear.
jhon309 0:ac8863619623 670 * This parameter can be any combination of the following values:
jhon309 0:ac8863619623 671 * @arg DMA_FLAG_TCx: Transfer complete flag
jhon309 0:ac8863619623 672 * @arg DMA_FLAG_HTx: Half transfer complete flag
jhon309 0:ac8863619623 673 * @arg DMA_FLAG_TEx: Transfer error flag
jhon309 0:ac8863619623 674 * Where x can be 0_4, 1_5, 2_6 or 3_7 to select the DMA Channel flag.
jhon309 0:ac8863619623 675 * @retval None
jhon309 0:ac8863619623 676 */
jhon309 0:ac8863619623 677 #define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) \
jhon309 0:ac8863619623 678 (((uint32_t)((__HANDLE__)->Instance) > (uint32_t)DMA1_Channel7)? (DMA2->IFCR = (__FLAG__)) :\
jhon309 0:ac8863619623 679 (DMA1->IFCR = (__FLAG__)))
jhon309 0:ac8863619623 680
jhon309 0:ac8863619623 681 #else /* STM32F030x8_STM32F030xC_STM32F031x6_STM32F038xx_STM32F051x8_STM32F058xx_STM32F070x6_STM32F070xB Product devices */
jhon309 0:ac8863619623 682 /**
jhon309 0:ac8863619623 683 * @brief Returns the current DMA Channel transfer complete flag.
jhon309 0:ac8863619623 684 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 685 * @retval The specified transfer complete flag index.
jhon309 0:ac8863619623 686 */
jhon309 0:ac8863619623 687 #define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \
jhon309 0:ac8863619623 688 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\
jhon309 0:ac8863619623 689 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\
jhon309 0:ac8863619623 690 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\
jhon309 0:ac8863619623 691 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\
jhon309 0:ac8863619623 692 DMA_FLAG_TC5)
jhon309 0:ac8863619623 693
jhon309 0:ac8863619623 694 /**
jhon309 0:ac8863619623 695 * @brief Returns the current DMA Channel half transfer complete flag.
jhon309 0:ac8863619623 696 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 697 * @retval The specified half transfer complete flag index.
jhon309 0:ac8863619623 698 */
jhon309 0:ac8863619623 699 #define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\
jhon309 0:ac8863619623 700 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\
jhon309 0:ac8863619623 701 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\
jhon309 0:ac8863619623 702 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\
jhon309 0:ac8863619623 703 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\
jhon309 0:ac8863619623 704 DMA_FLAG_HT5)
jhon309 0:ac8863619623 705
jhon309 0:ac8863619623 706 /**
jhon309 0:ac8863619623 707 * @brief Returns the current DMA Channel transfer error flag.
jhon309 0:ac8863619623 708 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 709 * @retval The specified transfer error flag index.
jhon309 0:ac8863619623 710 */
jhon309 0:ac8863619623 711 #define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\
jhon309 0:ac8863619623 712 (((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\
jhon309 0:ac8863619623 713 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\
jhon309 0:ac8863619623 714 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\
jhon309 0:ac8863619623 715 ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\
jhon309 0:ac8863619623 716 DMA_FLAG_TE5)
jhon309 0:ac8863619623 717
jhon309 0:ac8863619623 718 /**
jhon309 0:ac8863619623 719 * @brief Get the DMA Channel pending flags.
jhon309 0:ac8863619623 720 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 721 * @param __FLAG__: Get the specified flag.
jhon309 0:ac8863619623 722 * This parameter can be any combination of the following values:
jhon309 0:ac8863619623 723 * @arg DMA_FLAG_TCx: Transfer complete flag
jhon309 0:ac8863619623 724 * @arg DMA_FLAG_HTx: Half transfer complete flag
jhon309 0:ac8863619623 725 * @arg DMA_FLAG_TEx: Transfer error flag
jhon309 0:ac8863619623 726 * Where x can be 1_5 to select the DMA Channel flag.
jhon309 0:ac8863619623 727 * @retval The state of FLAG (SET or RESET).
jhon309 0:ac8863619623 728 */
jhon309 0:ac8863619623 729
jhon309 0:ac8863619623 730 #define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__) (DMA1->ISR & (__FLAG__))
jhon309 0:ac8863619623 731
jhon309 0:ac8863619623 732 /**
jhon309 0:ac8863619623 733 * @brief Clears the DMA Channel pending flags.
jhon309 0:ac8863619623 734 * @param __HANDLE__: DMA handle
jhon309 0:ac8863619623 735 * @param __FLAG__: specifies the flag to clear.
jhon309 0:ac8863619623 736 * This parameter can be any combination of the following values:
jhon309 0:ac8863619623 737 * @arg DMA_FLAG_TCx: Transfer complete flag
jhon309 0:ac8863619623 738 * @arg DMA_FLAG_HTx: Half transfer complete flag
jhon309 0:ac8863619623 739 * @arg DMA_FLAG_TEx: Transfer error flag
jhon309 0:ac8863619623 740 * Where x can be 1_5 to select the DMA Channel flag.
jhon309 0:ac8863619623 741 * @retval None
jhon309 0:ac8863619623 742 */
jhon309 0:ac8863619623 743 #define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) (DMA1->IFCR = (__FLAG__))
jhon309 0:ac8863619623 744
jhon309 0:ac8863619623 745 #endif
jhon309 0:ac8863619623 746
jhon309 0:ac8863619623 747
jhon309 0:ac8863619623 748 #if defined(STM32F091xC) || defined(STM32F098xx) || defined(STM32F030xC)
jhon309 0:ac8863619623 749 #define __HAL_DMA1_REMAP(__REQUEST__) \
jhon309 0:ac8863619623 750 do { assert_param(IS_HAL_DMA1_REMAP(__REQUEST__)); \
jhon309 0:ac8863619623 751 DMA1->CSELR &= ~((uint32_t)0x0F << (uint32_t)(((__REQUEST__) >> 28) * 4)); \
jhon309 0:ac8863619623 752 DMA1->CSELR |= (uint32_t)((__REQUEST__) & 0x0FFFFFFF); \
jhon309 0:ac8863619623 753 }while(0)
jhon309 0:ac8863619623 754
jhon309 0:ac8863619623 755 #if defined(STM32F091xC) || defined(STM32F098xx)
jhon309 0:ac8863619623 756 #define __HAL_DMA2_REMAP(__REQUEST__) \
jhon309 0:ac8863619623 757 do { assert_param(IS_HAL_DMA2_REMAP(__REQUEST__)); \
jhon309 0:ac8863619623 758 DMA2->CSELR &= ~((uint32_t)0x0F << (uint32_t)(((__REQUEST__) >> 28) * 4)); \
jhon309 0:ac8863619623 759 DMA2->CSELR |= (uint32_t)((__REQUEST__) & 0x0FFFFFFF); \
jhon309 0:ac8863619623 760 }while(0)
jhon309 0:ac8863619623 761 #endif /* STM32F091xC || STM32F098xx */
jhon309 0:ac8863619623 762
jhon309 0:ac8863619623 763 #endif /* STM32F091xC || STM32F098xx || STM32F030xC */
jhon309 0:ac8863619623 764
jhon309 0:ac8863619623 765 /**
jhon309 0:ac8863619623 766 * @}
jhon309 0:ac8863619623 767 */
jhon309 0:ac8863619623 768
jhon309 0:ac8863619623 769 /**
jhon309 0:ac8863619623 770 * @}
jhon309 0:ac8863619623 771 */
jhon309 0:ac8863619623 772
jhon309 0:ac8863619623 773 /**
jhon309 0:ac8863619623 774 * @}
jhon309 0:ac8863619623 775 */
jhon309 0:ac8863619623 776
jhon309 0:ac8863619623 777 #ifdef __cplusplus
jhon309 0:ac8863619623 778 }
jhon309 0:ac8863619623 779 #endif
jhon309 0:ac8863619623 780
jhon309 0:ac8863619623 781 #endif /* __STM32F0xx_HAL_DMA_EX_H */
jhon309 0:ac8863619623 782
jhon309 0:ac8863619623 783 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/