mbed library sources

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Mon Nov 03 10:30:07 2014 +0000
Revision:
381:5460fc57b6e4
Synchronized with git revision 02478cd1f27fc7b9643486472635eb515b2bca81

Full URL: https://github.com/mbedmicro/mbed/commit/02478cd1f27fc7b9643486472635eb515b2bca81/

Target: LPC1549 - Fix serial interrupt issues (issue report #616)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 381:5460fc57b6e4 1 /**
mbed_official 381:5460fc57b6e4 2 ******************************************************************************
mbed_official 381:5460fc57b6e4 3 * @file stm32f3xx_hal_dac_ex.h
mbed_official 381:5460fc57b6e4 4 * @author MCD Application Team
mbed_official 381:5460fc57b6e4 5 * @version V1.1.0
mbed_official 381:5460fc57b6e4 6 * @date 12-Sept-2014
mbed_official 381:5460fc57b6e4 7 * @brief Header file of DAC HAL Extended module.
mbed_official 381:5460fc57b6e4 8 ******************************************************************************
mbed_official 381:5460fc57b6e4 9 * @attention
mbed_official 381:5460fc57b6e4 10 *
mbed_official 381:5460fc57b6e4 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 381:5460fc57b6e4 12 *
mbed_official 381:5460fc57b6e4 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 381:5460fc57b6e4 14 * are permitted provided that the following conditions are met:
mbed_official 381:5460fc57b6e4 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 381:5460fc57b6e4 16 * this list of conditions and the following disclaimer.
mbed_official 381:5460fc57b6e4 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 381:5460fc57b6e4 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 381:5460fc57b6e4 19 * and/or other materials provided with the distribution.
mbed_official 381:5460fc57b6e4 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 381:5460fc57b6e4 21 * may be used to endorse or promote products derived from this software
mbed_official 381:5460fc57b6e4 22 * without specific prior written permission.
mbed_official 381:5460fc57b6e4 23 *
mbed_official 381:5460fc57b6e4 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 381:5460fc57b6e4 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 381:5460fc57b6e4 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 381:5460fc57b6e4 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 381:5460fc57b6e4 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 381:5460fc57b6e4 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 381:5460fc57b6e4 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 381:5460fc57b6e4 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 381:5460fc57b6e4 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 381:5460fc57b6e4 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 381:5460fc57b6e4 34 *
mbed_official 381:5460fc57b6e4 35 ******************************************************************************
mbed_official 381:5460fc57b6e4 36 */
mbed_official 381:5460fc57b6e4 37
mbed_official 381:5460fc57b6e4 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 381:5460fc57b6e4 39 #ifndef __STM32F3xx_HAL_DAC_EX_H
mbed_official 381:5460fc57b6e4 40 #define __STM32F3xx_HAL_DAC_EX_H
mbed_official 381:5460fc57b6e4 41
mbed_official 381:5460fc57b6e4 42 #ifdef __cplusplus
mbed_official 381:5460fc57b6e4 43 extern "C" {
mbed_official 381:5460fc57b6e4 44 #endif
mbed_official 381:5460fc57b6e4 45
mbed_official 381:5460fc57b6e4 46 /* Includes ------------------------------------------------------------------*/
mbed_official 381:5460fc57b6e4 47 #include "stm32f3xx_hal_def.h"
mbed_official 381:5460fc57b6e4 48
mbed_official 381:5460fc57b6e4 49 /** @addtogroup STM32F3xx_HAL_Driver
mbed_official 381:5460fc57b6e4 50 * @{
mbed_official 381:5460fc57b6e4 51 */
mbed_official 381:5460fc57b6e4 52
mbed_official 381:5460fc57b6e4 53 /** @addtogroup DACEx DAC Extended HAL module driver
mbed_official 381:5460fc57b6e4 54 * @{
mbed_official 381:5460fc57b6e4 55 */
mbed_official 381:5460fc57b6e4 56
mbed_official 381:5460fc57b6e4 57 /* Exported types ------------------------------------------------------------*/
mbed_official 381:5460fc57b6e4 58 /* Exported constants --------------------------------------------------------*/
mbed_official 381:5460fc57b6e4 59 /** @defgroup DACEx_Exported_Constants DAC Extended Exported Constants
mbed_official 381:5460fc57b6e4 60 * @{
mbed_official 381:5460fc57b6e4 61 */
mbed_official 381:5460fc57b6e4 62
mbed_official 381:5460fc57b6e4 63 /** @defgroup DACEx_trigger_selection DAC Extended trigger selection
mbed_official 381:5460fc57b6e4 64 * @{
mbed_official 381:5460fc57b6e4 65 */
mbed_official 381:5460fc57b6e4 66
mbed_official 381:5460fc57b6e4 67 #if defined(STM32F301x8) || defined(STM32F318xx)
mbed_official 381:5460fc57b6e4 68 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 381:5460fc57b6e4 69 has been loaded, and not by external trigger */
mbed_official 381:5460fc57b6e4 70 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 71 #define DAC_TRIGGER_T2_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TEN1)) /*!< TIM2 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 72 #define DAC_TRIGGER_T15_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM5 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 73 #define DAC_TRIGGER_EXT_IT9 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< EXTI Line9 event selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 74 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 381:5460fc57b6e4 75
mbed_official 381:5460fc57b6e4 76 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 381:5460fc57b6e4 77 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 381:5460fc57b6e4 78 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 381:5460fc57b6e4 79 ((TRIGGER) == DAC_TRIGGER_T15_TRGO) || \
mbed_official 381:5460fc57b6e4 80 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 381:5460fc57b6e4 81 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 381:5460fc57b6e4 82 #endif /* STM32F301x8 || STM32F318xx */
mbed_official 381:5460fc57b6e4 83
mbed_official 381:5460fc57b6e4 84 #if defined(STM32F302xE) || \
mbed_official 381:5460fc57b6e4 85 defined(STM32F302xC) || \
mbed_official 381:5460fc57b6e4 86 defined(STM32F302x8)
mbed_official 381:5460fc57b6e4 87
mbed_official 381:5460fc57b6e4 88 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 381:5460fc57b6e4 89 has been loaded, and not by external trigger */
mbed_official 381:5460fc57b6e4 90 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 91 #define DAC_TRIGGER_T3_TRGO ((uint32_t)(DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM3 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 92 #define DAC_TRIGGER_T15_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM5 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 93 #define DAC_TRIGGER_T2_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TEN1)) /*!< TIM2 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 94 #define DAC_TRIGGER_T4_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM4 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 95 #define DAC_TRIGGER_EXT_IT9 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< EXTI Line9 event selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 96 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 381:5460fc57b6e4 97
mbed_official 381:5460fc57b6e4 98 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 381:5460fc57b6e4 99 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 381:5460fc57b6e4 100 ((TRIGGER) == DAC_TRIGGER_T3_TRGO) || \
mbed_official 381:5460fc57b6e4 101 ((TRIGGER) == DAC_TRIGGER_T4_TRGO) || \
mbed_official 381:5460fc57b6e4 102 ((TRIGGER) == DAC_TRIGGER_T15_TRGO) || \
mbed_official 381:5460fc57b6e4 103 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 381:5460fc57b6e4 104 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 381:5460fc57b6e4 105 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 381:5460fc57b6e4 106
mbed_official 381:5460fc57b6e4 107 #endif /* STM32F302xE || */
mbed_official 381:5460fc57b6e4 108 /* STM32F302xC || */
mbed_official 381:5460fc57b6e4 109 /* STM32F302x8 */
mbed_official 381:5460fc57b6e4 110
mbed_official 381:5460fc57b6e4 111 #if defined(STM32F303xE) || defined(STM32F398xx) || \
mbed_official 381:5460fc57b6e4 112 defined(STM32F303xC) || defined(STM32F358xx)
mbed_official 381:5460fc57b6e4 113
mbed_official 381:5460fc57b6e4 114 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 381:5460fc57b6e4 115 has been loaded, and not by external trigger */
mbed_official 381:5460fc57b6e4 116 #define DAC_TRIGGER_T2_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TEN1)) /*!< TIM2 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 117 #define DAC_TRIGGER_T4_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM4 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 118 #define DAC_TRIGGER_T15_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM5 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 119 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 120 #define DAC_TRIGGER_T7_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< TIM7 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 121 #define DAC_TRIGGER_T3_TRGO ((uint32_t)(DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM3 TRGO selected as external conversion trigger for DAC channel
mbed_official 381:5460fc57b6e4 122 Use __HAL_REMAPTRIGGER_ENABLE(HAL_REMAPTRIGGER_DAC1_TRIG) for TIM3 selection */
mbed_official 381:5460fc57b6e4 123 #define DAC_TRIGGER_T8_TRGO DAC_TRIGGER_T3_TRGO /*!< TIM8 TRGO selected as external conversion trigger for DAC channel
mbed_official 381:5460fc57b6e4 124 Use __HAL_REMAPTRIGGER_DISABLE(HAL_REMAPTRIGGER_DAC1_TRIG) for TIM8 selection */
mbed_official 381:5460fc57b6e4 125
mbed_official 381:5460fc57b6e4 126 #define DAC_TRIGGER_EXT_IT9 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< EXTI Line9 event selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 127 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 381:5460fc57b6e4 128
mbed_official 381:5460fc57b6e4 129 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 381:5460fc57b6e4 130 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 381:5460fc57b6e4 131 ((TRIGGER) == DAC_TRIGGER_T3_TRGO) || \
mbed_official 381:5460fc57b6e4 132 ((TRIGGER) == DAC_TRIGGER_T4_TRGO) || \
mbed_official 381:5460fc57b6e4 133 ((TRIGGER) == DAC_TRIGGER_T15_TRGO) || \
mbed_official 381:5460fc57b6e4 134 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 381:5460fc57b6e4 135 ((TRIGGER) == DAC_TRIGGER_T7_TRGO) || \
mbed_official 381:5460fc57b6e4 136 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 381:5460fc57b6e4 137 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 381:5460fc57b6e4 138 #endif /* STM32F303xE || STM32F398xx || */
mbed_official 381:5460fc57b6e4 139 /* STM32F303xC || STM32F358xx */
mbed_official 381:5460fc57b6e4 140
mbed_official 381:5460fc57b6e4 141
mbed_official 381:5460fc57b6e4 142 #if defined(STM32F303x8) || defined(STM32F328xx)
mbed_official 381:5460fc57b6e4 143
mbed_official 381:5460fc57b6e4 144 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 381:5460fc57b6e4 145 has been loaded, and not by external trigger */
mbed_official 381:5460fc57b6e4 146 #define DAC_TRIGGER_T2_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TEN1)) /*!< TIM2 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 147 #define DAC_TRIGGER_T15_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM5 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 148 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 149 #define DAC_TRIGGER_T7_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< TIM7 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 150 #define DAC_TRIGGER_T3_TRGO ((uint32_t)(DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM3 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 151
mbed_official 381:5460fc57b6e4 152 #define DAC_TRIGGER_EXT_IT9 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< EXTI Line9 event selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 153 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 381:5460fc57b6e4 154
mbed_official 381:5460fc57b6e4 155 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 381:5460fc57b6e4 156 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 381:5460fc57b6e4 157 ((TRIGGER) == DAC_TRIGGER_T3_TRGO) || \
mbed_official 381:5460fc57b6e4 158 ((TRIGGER) == DAC_TRIGGER_T15_TRGO) || \
mbed_official 381:5460fc57b6e4 159 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 381:5460fc57b6e4 160 ((TRIGGER) == DAC_TRIGGER_T7_TRGO) || \
mbed_official 381:5460fc57b6e4 161 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 381:5460fc57b6e4 162 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 381:5460fc57b6e4 163
mbed_official 381:5460fc57b6e4 164 #endif /* STM32F303x8 || STM32F328xx */
mbed_official 381:5460fc57b6e4 165
mbed_official 381:5460fc57b6e4 166
mbed_official 381:5460fc57b6e4 167 #if defined(STM32F373xC) || defined(STM32F378xx)
mbed_official 381:5460fc57b6e4 168
mbed_official 381:5460fc57b6e4 169 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 381:5460fc57b6e4 170 has been loaded, and not by external trigger */
mbed_official 381:5460fc57b6e4 171
mbed_official 381:5460fc57b6e4 172 #define DAC_TRIGGER_T2_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TEN1)) /*!< TIM2 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 173 #define DAC_TRIGGER_T4_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM4 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 174 #define DAC_TRIGGER_T5_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM5 TRGO selected as external conversion trigger for DAC channel (DAC1) */
mbed_official 381:5460fc57b6e4 175 #define DAC_TRIGGER_T18_TRGO DAC_TRIGGER_T5_TRGO /*!< TIM18 TRGO selected as external conversion trigger for DAC channel (DAC2) */
mbed_official 381:5460fc57b6e4 176 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 177 #define DAC_TRIGGER_T7_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< TIM7 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 178 #define DAC_TRIGGER_T3_TRGO ((uint32_t)(DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM3 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 179
mbed_official 381:5460fc57b6e4 180 #define DAC_TRIGGER_EXT_IT9 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< EXTI Line9 event selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 181 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 381:5460fc57b6e4 182
mbed_official 381:5460fc57b6e4 183
mbed_official 381:5460fc57b6e4 184 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 381:5460fc57b6e4 185 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 381:5460fc57b6e4 186 ((TRIGGER) == DAC_TRIGGER_T3_TRGO) || \
mbed_official 381:5460fc57b6e4 187 ((TRIGGER) == DAC_TRIGGER_T4_TRGO) || \
mbed_official 381:5460fc57b6e4 188 ((TRIGGER) == DAC_TRIGGER_T5_TRGO) || \
mbed_official 381:5460fc57b6e4 189 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 381:5460fc57b6e4 190 ((TRIGGER) == DAC_TRIGGER_T7_TRGO) || \
mbed_official 381:5460fc57b6e4 191 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 381:5460fc57b6e4 192 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 381:5460fc57b6e4 193 #endif /* STM32F373xC || STM32F378xx */
mbed_official 381:5460fc57b6e4 194
mbed_official 381:5460fc57b6e4 195 #if defined(STM32F334x8)
mbed_official 381:5460fc57b6e4 196
mbed_official 381:5460fc57b6e4 197 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 381:5460fc57b6e4 198 has been loaded, and not by external trigger */
mbed_official 381:5460fc57b6e4 199 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 200 #define DAC_TRIGGER_T3_TRGO ((uint32_t)(DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM3 TRGO selected as external conversion trigger for DAC channel
mbed_official 381:5460fc57b6e4 201 Use __HAL_REMAPTRIGGER_ENABLE(HAL_REMAPTRIGGER_DAC1_TRIG) for TIM3 remap */
mbed_official 381:5460fc57b6e4 202
mbed_official 381:5460fc57b6e4 203 #define DAC_TRIGGER_T7_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< TIM7 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 204 #define DAC_TRIGGER_T2_TRGO ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TEN1)) /*!< TIM2 TRGO selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 205 #define DAC_TRIGGER_T15_TRGO ((uint32_t)(DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM15 TRGO selected as external conversion trigger for DAC channel
mbed_official 381:5460fc57b6e4 206 Use __HAL_REMAPTRIGGER_DISABLE(HAL_REMAPTRIGGER_DAC1_TRIG3) for TIM15 selection */
mbed_official 381:5460fc57b6e4 207 #define DAC_TRIGGER_HRTIM1_DACTRG1 DAC_TRIGGER_T15_TRGO /*!< HRTIM1 DACTRG1 selected as external conversion trigger for DAC
mbed_official 381:5460fc57b6e4 208 Use __HAL_REMAPTRIGGER_ENABLE(HAL_REMAPTRIGGER_DAC1_TRIG3) for HRTIM1 DACTRG1 selection */
mbed_official 381:5460fc57b6e4 209
mbed_official 381:5460fc57b6e4 210 #define DAC_TRIGGER_HRTIM1_DACTRG2 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< HRTIM1 DACTRG2 selected as external conversion trigger for DAC channel (DAC1)
mbed_official 381:5460fc57b6e4 211 Use __HAL_REMAPTRIGGER_ENABLE(HAL_REMAPTRIGGER_DAC1_TRIG5) for HRTIM1 DACTRG2 remap */
mbed_official 381:5460fc57b6e4 212 #define DAC_TRIGGER_HRTIM1_DACTRG3 DAC_TRIGGER_HRTIM1_DACTRG2 /*!< HRTIM1 DACTRG3 selected as external conversion trigger for DAC channel (DAC2)*/
mbed_official 381:5460fc57b6e4 213
mbed_official 381:5460fc57b6e4 214 #define DAC_TRIGGER_EXT_IT9 ((uint32_t)(DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)) /*!< EXTI Line9 event selected as external conversion trigger for DAC channel */
mbed_official 381:5460fc57b6e4 215 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 381:5460fc57b6e4 216
mbed_official 381:5460fc57b6e4 217 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 381:5460fc57b6e4 218 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 381:5460fc57b6e4 219 ((TRIGGER) == DAC_TRIGGER_T3_TRGO) || \
mbed_official 381:5460fc57b6e4 220 ((TRIGGER) == DAC_TRIGGER_T7_TRGO) || \
mbed_official 381:5460fc57b6e4 221 ((TRIGGER) == DAC_TRIGGER_T15_TRGO) || \
mbed_official 381:5460fc57b6e4 222 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 381:5460fc57b6e4 223 ((TRIGGER) == DAC_TRIGGER_HRTIM1_DACTRG2) || \
mbed_official 381:5460fc57b6e4 224 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 381:5460fc57b6e4 225 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 381:5460fc57b6e4 226
mbed_official 381:5460fc57b6e4 227 #endif /* STM32F334x8 */
mbed_official 381:5460fc57b6e4 228
mbed_official 381:5460fc57b6e4 229 /**
mbed_official 381:5460fc57b6e4 230 * @}
mbed_official 381:5460fc57b6e4 231 */
mbed_official 381:5460fc57b6e4 232
mbed_official 381:5460fc57b6e4 233 /** @defgroup DACEx_Channel_selection DAC Extended Channel selection
mbed_official 381:5460fc57b6e4 234 * @{
mbed_official 381:5460fc57b6e4 235 */
mbed_official 381:5460fc57b6e4 236
mbed_official 381:5460fc57b6e4 237 #if defined(STM32F302xE) || \
mbed_official 381:5460fc57b6e4 238 defined(STM32F302xC) || \
mbed_official 381:5460fc57b6e4 239 defined(STM32F301x8) || defined(STM32F302x8) || defined(STM32F318xx)
mbed_official 381:5460fc57b6e4 240 #define DAC_CHANNEL_1 ((uint32_t)0x00000000) /*!< DAC Channel 1 */
mbed_official 381:5460fc57b6e4 241 /* Aliases for compatibility */
mbed_official 381:5460fc57b6e4 242 #define DAC1_CHANNEL_1 DAC_CHANNEL_1 /*!< DAC1 Channel 1 */
mbed_official 381:5460fc57b6e4 243
mbed_official 381:5460fc57b6e4 244 #define IS_DAC_CHANNEL(CHANNEL) ((CHANNEL) == DAC_CHANNEL_1)
mbed_official 381:5460fc57b6e4 245 #endif /* STM32F302xE || */
mbed_official 381:5460fc57b6e4 246 /* STM32F302xC || */
mbed_official 381:5460fc57b6e4 247 /* STM32F301x8 || STM32F302x8 || STM32F318xx */
mbed_official 381:5460fc57b6e4 248
mbed_official 381:5460fc57b6e4 249
mbed_official 381:5460fc57b6e4 250 #if defined(STM32F303xE) || defined(STM32F398xx) || \
mbed_official 381:5460fc57b6e4 251 defined(STM32F303xC) || defined(STM32F358xx)
mbed_official 381:5460fc57b6e4 252 #define DAC_CHANNEL_1 ((uint32_t)0x00000000) /*!< DAC Channel 1 */
mbed_official 381:5460fc57b6e4 253 #define DAC_CHANNEL_2 ((uint32_t)0x00000010) /*!< DAC Channel 2 */
mbed_official 381:5460fc57b6e4 254 /* Aliases for compatibility */
mbed_official 381:5460fc57b6e4 255 #define DAC1_CHANNEL_1 DAC_CHANNEL_1 /*!< DAC1 Channel 1 */
mbed_official 381:5460fc57b6e4 256 #define DAC1_CHANNEL_2 DAC_CHANNEL_2 /*!< DAC1 Channel 2 */
mbed_official 381:5460fc57b6e4 257
mbed_official 381:5460fc57b6e4 258 #define IS_DAC_CHANNEL(CHANNEL) (((CHANNEL) == DAC_CHANNEL_1) || \
mbed_official 381:5460fc57b6e4 259 ((CHANNEL) == DAC_CHANNEL_2))
mbed_official 381:5460fc57b6e4 260 #endif /* STM32F303xE || STM32F398xx || */
mbed_official 381:5460fc57b6e4 261 /* STM32F303xC || STM32F358xx */
mbed_official 381:5460fc57b6e4 262
mbed_official 381:5460fc57b6e4 263 #if defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx) || \
mbed_official 381:5460fc57b6e4 264 defined(STM32F373xC) || defined(STM32F378xx)
mbed_official 381:5460fc57b6e4 265
mbed_official 381:5460fc57b6e4 266 #define DAC_CHANNEL_1 ((uint32_t)0x00000000) /*!< DAC Channel 1 */
mbed_official 381:5460fc57b6e4 267 #define DAC_CHANNEL_2 ((uint32_t)0x00000010) /*!< DAC Channel 2 */
mbed_official 381:5460fc57b6e4 268
mbed_official 381:5460fc57b6e4 269 /* Aliases for compatibility */
mbed_official 381:5460fc57b6e4 270 #define DAC1_CHANNEL_1 DAC_CHANNEL_1 /*!< DAC1 Channel 1 */
mbed_official 381:5460fc57b6e4 271 #define DAC1_CHANNEL_2 DAC_CHANNEL_2 /*!< DAC1 Channel 2 */
mbed_official 381:5460fc57b6e4 272 #define DAC2_CHANNEL_1 DAC_CHANNEL_1 /*!< DAC2 Channel 1 */
mbed_official 381:5460fc57b6e4 273
mbed_official 381:5460fc57b6e4 274 #define IS_DAC_CHANNEL(CHANNEL) (((CHANNEL) == DAC_CHANNEL_1) || \
mbed_official 381:5460fc57b6e4 275 ((CHANNEL) == DAC_CHANNEL_2))
mbed_official 381:5460fc57b6e4 276 #endif /* STM32F303x8 || STM32F334x8 || STM32F328xx || */
mbed_official 381:5460fc57b6e4 277 /* STM32F373xC || STM32F378xx */
mbed_official 381:5460fc57b6e4 278
mbed_official 381:5460fc57b6e4 279 /**
mbed_official 381:5460fc57b6e4 280 * @}
mbed_official 381:5460fc57b6e4 281 */
mbed_official 381:5460fc57b6e4 282
mbed_official 381:5460fc57b6e4 283 /**
mbed_official 381:5460fc57b6e4 284 * @}
mbed_official 381:5460fc57b6e4 285 */
mbed_official 381:5460fc57b6e4 286
mbed_official 381:5460fc57b6e4 287 /* Exported macro ------------------------------------------------------------*/
mbed_official 381:5460fc57b6e4 288 /** @addtogroup DACEx_Exported_Functions DAC Extended Exported Functions
mbed_official 381:5460fc57b6e4 289 * @{
mbed_official 381:5460fc57b6e4 290 */
mbed_official 381:5460fc57b6e4 291 /* Extended features functions ***********************************************/
mbed_official 381:5460fc57b6e4 292 uint32_t HAL_DACEx_DualGetValue(DAC_HandleTypeDef* hdac);
mbed_official 381:5460fc57b6e4 293 HAL_StatusTypeDef HAL_DACEx_DualSetValue(DAC_HandleTypeDef* hdac, uint32_t alignment, uint32_t data1, uint32_t data2);
mbed_official 381:5460fc57b6e4 294 HAL_StatusTypeDef HAL_DACEx_TriangleWaveGenerate(DAC_HandleTypeDef* hdac, uint32_t channel, uint32_t Amplitude);
mbed_official 381:5460fc57b6e4 295 HAL_StatusTypeDef HAL_DACEx_NoiseWaveGenerate(DAC_HandleTypeDef* hdac, uint32_t channel, uint32_t Amplitude);
mbed_official 381:5460fc57b6e4 296
mbed_official 381:5460fc57b6e4 297 void HAL_DACEx_ConvCpltCallbackCh2(DAC_HandleTypeDef* hdac);
mbed_official 381:5460fc57b6e4 298 void HAL_DACEx_ConvHalfCpltCallbackCh2(DAC_HandleTypeDef* hdac);
mbed_official 381:5460fc57b6e4 299 void HAL_DACEx_ErrorCallbackCh2(DAC_HandleTypeDef *hdac);
mbed_official 381:5460fc57b6e4 300 void HAL_DACEx_DMAUnderrunCallbackCh2(DAC_HandleTypeDef *hdac);
mbed_official 381:5460fc57b6e4 301
mbed_official 381:5460fc57b6e4 302 /**
mbed_official 381:5460fc57b6e4 303 * @}
mbed_official 381:5460fc57b6e4 304 */
mbed_official 381:5460fc57b6e4 305
mbed_official 381:5460fc57b6e4 306 /**
mbed_official 381:5460fc57b6e4 307 * @}
mbed_official 381:5460fc57b6e4 308 */
mbed_official 381:5460fc57b6e4 309
mbed_official 381:5460fc57b6e4 310 /**
mbed_official 381:5460fc57b6e4 311 * @}
mbed_official 381:5460fc57b6e4 312 */
mbed_official 381:5460fc57b6e4 313
mbed_official 381:5460fc57b6e4 314 #ifdef __cplusplus
mbed_official 381:5460fc57b6e4 315 }
mbed_official 381:5460fc57b6e4 316 #endif
mbed_official 381:5460fc57b6e4 317
mbed_official 381:5460fc57b6e4 318 #endif /* __STM32F3xx_HAL_HAL_EX_H */
mbed_official 381:5460fc57b6e4 319
mbed_official 381:5460fc57b6e4 320 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/