mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

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

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

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

Import librarymbed

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

Committer:
mbed_official
Date:
Wed Aug 06 08:15:07 2014 +0100
Revision:
274:6937b19af361
Parent:
226:b062af740e40
Child:
369:2e96f1b71984
Synchronized with git revision 5b145e4f6c509376173c3ea2aa35a6da879a2124

Full URL: https://github.com/mbedmicro/mbed/commit/5b145e4f6c509376173c3ea2aa35a6da879a2124/

[TARGET_LPC11UXX] PeripheralNames.h and PinMap definitions separation for LPC11UXX platforms

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 87:085cde657901 1 /**
mbed_official 87:085cde657901 2 ******************************************************************************
mbed_official 87:085cde657901 3 * @file stm32f4xx_hal_dac.h
mbed_official 87:085cde657901 4 * @author MCD Application Team
mbed_official 226:b062af740e40 5 * @version V1.1.0RC2
mbed_official 226:b062af740e40 6 * @date 14-May-2014
mbed_official 87:085cde657901 7 * @brief Header file of DAC HAL module.
mbed_official 87:085cde657901 8 ******************************************************************************
mbed_official 87:085cde657901 9 * @attention
mbed_official 87:085cde657901 10 *
mbed_official 87:085cde657901 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 87:085cde657901 12 *
mbed_official 87:085cde657901 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 87:085cde657901 14 * are permitted provided that the following conditions are met:
mbed_official 87:085cde657901 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 87:085cde657901 16 * this list of conditions and the following disclaimer.
mbed_official 87:085cde657901 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 87:085cde657901 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 87:085cde657901 19 * and/or other materials provided with the distribution.
mbed_official 87:085cde657901 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 87:085cde657901 21 * may be used to endorse or promote products derived from this software
mbed_official 87:085cde657901 22 * without specific prior written permission.
mbed_official 87:085cde657901 23 *
mbed_official 87:085cde657901 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 87:085cde657901 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 87:085cde657901 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 87:085cde657901 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 87:085cde657901 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 87:085cde657901 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 87:085cde657901 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 87:085cde657901 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 87:085cde657901 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 87:085cde657901 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 87:085cde657901 34 *
mbed_official 87:085cde657901 35 ******************************************************************************
mbed_official 87:085cde657901 36 */
mbed_official 87:085cde657901 37
mbed_official 87:085cde657901 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 87:085cde657901 39 #ifndef __STM32F4xx_HAL_DAC_H
mbed_official 87:085cde657901 40 #define __STM32F4xx_HAL_DAC_H
mbed_official 87:085cde657901 41
mbed_official 87:085cde657901 42 #ifdef __cplusplus
mbed_official 87:085cde657901 43 extern "C" {
mbed_official 87:085cde657901 44 #endif
mbed_official 87:085cde657901 45
mbed_official 87:085cde657901 46 #if defined(STM32F405xx) || defined(STM32F415xx) || defined(STM32F407xx) || defined(STM32F417xx) || defined(STM32F427xx) || defined(STM32F437xx) || defined(STM32F429xx) || defined(STM32F439xx)
mbed_official 87:085cde657901 47
mbed_official 87:085cde657901 48 /* Includes ------------------------------------------------------------------*/
mbed_official 87:085cde657901 49 #include "stm32f4xx_hal_def.h"
mbed_official 87:085cde657901 50
mbed_official 87:085cde657901 51 /** @addtogroup STM32F4xx_HAL_Driver
mbed_official 87:085cde657901 52 * @{
mbed_official 87:085cde657901 53 */
mbed_official 87:085cde657901 54
mbed_official 87:085cde657901 55 /** @addtogroup DAC
mbed_official 87:085cde657901 56 * @{
mbed_official 87:085cde657901 57 */
mbed_official 87:085cde657901 58
mbed_official 87:085cde657901 59 /* Exported types ------------------------------------------------------------*/
mbed_official 87:085cde657901 60
mbed_official 87:085cde657901 61 /**
mbed_official 226:b062af740e40 62 * @brief HAL State structures definition
mbed_official 226:b062af740e40 63 */
mbed_official 87:085cde657901 64 typedef enum
mbed_official 87:085cde657901 65 {
mbed_official 87:085cde657901 66 HAL_DAC_STATE_RESET = 0x00, /*!< DAC not yet initialized or disabled */
mbed_official 87:085cde657901 67 HAL_DAC_STATE_READY = 0x01, /*!< DAC initialized and ready for use */
mbed_official 87:085cde657901 68 HAL_DAC_STATE_BUSY = 0x02, /*!< DAC internal processing is ongoing */
mbed_official 87:085cde657901 69 HAL_DAC_STATE_TIMEOUT = 0x03, /*!< DAC timeout state */
mbed_official 87:085cde657901 70 HAL_DAC_STATE_ERROR = 0x04 /*!< DAC error state */
mbed_official 87:085cde657901 71 }HAL_DAC_StateTypeDef;
mbed_official 87:085cde657901 72
mbed_official 87:085cde657901 73 /**
mbed_official 226:b062af740e40 74 * @brief DAC handle Structure definition
mbed_official 226:b062af740e40 75 */
mbed_official 87:085cde657901 76 typedef struct
mbed_official 87:085cde657901 77 {
mbed_official 87:085cde657901 78 DAC_TypeDef *Instance; /*!< Register base address */
mbed_official 226:b062af740e40 79
mbed_official 87:085cde657901 80 __IO HAL_DAC_StateTypeDef State; /*!< DAC communication state */
mbed_official 87:085cde657901 81
mbed_official 87:085cde657901 82 HAL_LockTypeDef Lock; /*!< DAC locking object */
mbed_official 226:b062af740e40 83
mbed_official 87:085cde657901 84 DMA_HandleTypeDef *DMA_Handle1; /*!< Pointer DMA handler for channel 1 */
mbed_official 226:b062af740e40 85
mbed_official 226:b062af740e40 86 DMA_HandleTypeDef *DMA_Handle2; /*!< Pointer DMA handler for channel 2 */
mbed_official 226:b062af740e40 87
mbed_official 87:085cde657901 88 __IO uint32_t ErrorCode; /*!< DAC Error code */
mbed_official 226:b062af740e40 89
mbed_official 87:085cde657901 90 }DAC_HandleTypeDef;
mbed_official 87:085cde657901 91
mbed_official 87:085cde657901 92 /**
mbed_official 226:b062af740e40 93 * @brief DAC Configuration regular Channel structure definition
mbed_official 226:b062af740e40 94 */
mbed_official 87:085cde657901 95 typedef struct
mbed_official 87:085cde657901 96 {
mbed_official 87:085cde657901 97 uint32_t DAC_Trigger; /*!< Specifies the external trigger for the selected DAC channel.
mbed_official 87:085cde657901 98 This parameter can be a value of @ref DAC_trigger_selection */
mbed_official 226:b062af740e40 99
mbed_official 87:085cde657901 100 uint32_t DAC_OutputBuffer; /*!< Specifies whether the DAC channel output buffer is enabled or disabled.
mbed_official 87:085cde657901 101 This parameter can be a value of @ref DAC_output_buffer */
mbed_official 87:085cde657901 102 }DAC_ChannelConfTypeDef;
mbed_official 87:085cde657901 103
mbed_official 87:085cde657901 104 /* Exported constants --------------------------------------------------------*/
mbed_official 87:085cde657901 105
mbed_official 87:085cde657901 106 /** @defgroup DAC_Error_Code
mbed_official 87:085cde657901 107 * @{
mbed_official 87:085cde657901 108 */
mbed_official 87:085cde657901 109 #define HAL_DAC_ERROR_NONE 0x00 /*!< No error */
mbed_official 87:085cde657901 110 #define HAL_DAC_ERROR_DMAUNDERRUNCH1 0x01 /*!< DAC channel1 DAM underrun error */
mbed_official 87:085cde657901 111 #define HAL_DAC_ERROR_DMAUNDERRUNCH2 0x02 /*!< DAC channel2 DAM underrun error */
mbed_official 226:b062af740e40 112 #define HAL_DAC_ERROR_DMA 0x04 /*!< DMA error */
mbed_official 87:085cde657901 113 /**
mbed_official 87:085cde657901 114 * @}
mbed_official 87:085cde657901 115 */
mbed_official 226:b062af740e40 116
mbed_official 226:b062af740e40 117 /** @defgroup DAC_trigger_selection
mbed_official 87:085cde657901 118 * @{
mbed_official 87:085cde657901 119 */
mbed_official 87:085cde657901 120
mbed_official 87:085cde657901 121 #define DAC_TRIGGER_NONE ((uint32_t)0x00000000) /*!< Conversion is automatic once the DAC1_DHRxxxx register
mbed_official 87:085cde657901 122 has been loaded, and not by external trigger */
mbed_official 87:085cde657901 123 #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 87:085cde657901 124 #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 87:085cde657901 125 #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 */
mbed_official 87:085cde657901 126 #define DAC_TRIGGER_T6_TRGO ((uint32_t)DAC_CR_TEN1) /*!< TIM6 TRGO selected as external conversion trigger for DAC channel */
mbed_official 87:085cde657901 127 #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 87:085cde657901 128 #define DAC_TRIGGER_T8_TRGO ((uint32_t)(DAC_CR_TSEL1_0 | DAC_CR_TEN1)) /*!< TIM8 TRGO selected as external conversion trigger for DAC channel */
mbed_official 87:085cde657901 129
mbed_official 87:085cde657901 130 #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 87:085cde657901 131 #define DAC_TRIGGER_SOFTWARE ((uint32_t)(DAC_CR_TSEL1 | DAC_CR_TEN1)) /*!< Conversion started by software trigger for DAC channel */
mbed_official 87:085cde657901 132
mbed_official 87:085cde657901 133 #define IS_DAC_TRIGGER(TRIGGER) (((TRIGGER) == DAC_TRIGGER_NONE) || \
mbed_official 87:085cde657901 134 ((TRIGGER) == DAC_TRIGGER_T2_TRGO) || \
mbed_official 87:085cde657901 135 ((TRIGGER) == DAC_TRIGGER_T8_TRGO) || \
mbed_official 87:085cde657901 136 ((TRIGGER) == DAC_TRIGGER_T7_TRGO) || \
mbed_official 87:085cde657901 137 ((TRIGGER) == DAC_TRIGGER_T5_TRGO) || \
mbed_official 87:085cde657901 138 ((TRIGGER) == DAC_TRIGGER_T6_TRGO) || \
mbed_official 87:085cde657901 139 ((TRIGGER) == DAC_TRIGGER_T4_TRGO) || \
mbed_official 87:085cde657901 140 ((TRIGGER) == DAC_TRIGGER_EXT_IT9) || \
mbed_official 87:085cde657901 141 ((TRIGGER) == DAC_TRIGGER_SOFTWARE))
mbed_official 87:085cde657901 142 /**
mbed_official 87:085cde657901 143 * @}
mbed_official 87:085cde657901 144 */
mbed_official 87:085cde657901 145
mbed_official 87:085cde657901 146 /** @defgroup DAC_output_buffer
mbed_official 87:085cde657901 147 * @{
mbed_official 87:085cde657901 148 */
mbed_official 87:085cde657901 149 #define DAC_OUTPUTBUFFER_ENABLE ((uint32_t)0x00000000)
mbed_official 87:085cde657901 150 #define DAC_OUTPUTBUFFER_DISABLE ((uint32_t)DAC_CR_BOFF1)
mbed_official 87:085cde657901 151
mbed_official 87:085cde657901 152 #define IS_DAC_OUTPUT_BUFFER_STATE(STATE) (((STATE) == DAC_OUTPUTBUFFER_ENABLE) || \
mbed_official 87:085cde657901 153 ((STATE) == DAC_OUTPUTBUFFER_DISABLE))
mbed_official 87:085cde657901 154 /**
mbed_official 87:085cde657901 155 * @}
mbed_official 87:085cde657901 156 */
mbed_official 87:085cde657901 157
mbed_official 87:085cde657901 158 /** @defgroup DAC_Channel_selection
mbed_official 87:085cde657901 159 * @{
mbed_official 87:085cde657901 160 */
mbed_official 87:085cde657901 161 #define DAC_CHANNEL_1 ((uint32_t)0x00000000)
mbed_official 87:085cde657901 162 #define DAC_CHANNEL_2 ((uint32_t)0x00000010)
mbed_official 87:085cde657901 163
mbed_official 87:085cde657901 164 #define IS_DAC_CHANNEL(CHANNEL) (((CHANNEL) == DAC_CHANNEL_1) || \
mbed_official 87:085cde657901 165 ((CHANNEL) == DAC_CHANNEL_2))
mbed_official 87:085cde657901 166 /**
mbed_official 87:085cde657901 167 * @}
mbed_official 87:085cde657901 168 */
mbed_official 87:085cde657901 169
mbed_official 87:085cde657901 170 /** @defgroup DAC_data_alignement
mbed_official 87:085cde657901 171 * @{
mbed_official 87:085cde657901 172 */
mbed_official 87:085cde657901 173 #define DAC_ALIGN_12B_R ((uint32_t)0x00000000)
mbed_official 87:085cde657901 174 #define DAC_ALIGN_12B_L ((uint32_t)0x00000004)
mbed_official 87:085cde657901 175 #define DAC_ALIGN_8B_R ((uint32_t)0x00000008)
mbed_official 87:085cde657901 176
mbed_official 87:085cde657901 177 #define IS_DAC_ALIGN(ALIGN) (((ALIGN) == DAC_ALIGN_12B_R) || \
mbed_official 87:085cde657901 178 ((ALIGN) == DAC_ALIGN_12B_L) || \
mbed_official 87:085cde657901 179 ((ALIGN) == DAC_ALIGN_8B_R))
mbed_official 87:085cde657901 180 /**
mbed_official 87:085cde657901 181 * @}
mbed_official 87:085cde657901 182 */
mbed_official 87:085cde657901 183
mbed_official 87:085cde657901 184 /** @defgroup DAC_data
mbed_official 87:085cde657901 185 * @{
mbed_official 87:085cde657901 186 */
mbed_official 226:b062af740e40 187 #define IS_DAC_DATA(DATA) ((DATA) <= 0xFFF0)
mbed_official 87:085cde657901 188 /**
mbed_official 87:085cde657901 189 * @}
mbed_official 87:085cde657901 190 */
mbed_official 87:085cde657901 191
mbed_official 87:085cde657901 192 /** @defgroup DAC_flags_definition
mbed_official 87:085cde657901 193 * @{
mbed_official 87:085cde657901 194 */
mbed_official 87:085cde657901 195 #define DAC_FLAG_DMAUDR1 ((uint32_t)DAC_SR_DMAUDR1)
mbed_official 226:b062af740e40 196 #define DAC_FLAG_DMAUDR2 ((uint32_t)DAC_SR_DMAUDR2)
mbed_official 87:085cde657901 197
mbed_official 87:085cde657901 198 #define IS_DAC_FLAG(FLAG) (((FLAG) == DAC_FLAG_DMAUDR1) || \
mbed_official 87:085cde657901 199 ((FLAG) == DAC_FLAG_DMAUDR2))
mbed_official 87:085cde657901 200 /**
mbed_official 87:085cde657901 201 * @}
mbed_official 87:085cde657901 202 */
mbed_official 87:085cde657901 203
mbed_official 87:085cde657901 204 /** @defgroup DAC_IT_definition
mbed_official 87:085cde657901 205 * @{
mbed_official 87:085cde657901 206 */
mbed_official 87:085cde657901 207 #define DAC_IT_DMAUDR1 ((uint32_t)DAC_SR_DMAUDR1)
mbed_official 226:b062af740e40 208 #define DAC_IT_DMAUDR2 ((uint32_t)DAC_SR_DMAUDR2)
mbed_official 87:085cde657901 209
mbed_official 87:085cde657901 210 #define IS_DAC_IT(IT) (((IT) == DAC_IT_DMAUDR1) || \
mbed_official 87:085cde657901 211 ((IT) == DAC_IT_DMAUDR2))
mbed_official 87:085cde657901 212 /**
mbed_official 87:085cde657901 213 * @}
mbed_official 87:085cde657901 214 */
mbed_official 87:085cde657901 215
mbed_official 87:085cde657901 216 /* Exported macro ------------------------------------------------------------*/
mbed_official 226:b062af740e40 217
mbed_official 226:b062af740e40 218 /** @brief Reset DAC handle state
mbed_official 226:b062af740e40 219 * @param __HANDLE__: specifies the DAC handle.
mbed_official 226:b062af740e40 220 * @retval None
mbed_official 226:b062af740e40 221 */
mbed_official 226:b062af740e40 222 #define __HAL_DAC_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_DAC_STATE_RESET)
mbed_official 226:b062af740e40 223
mbed_official 226:b062af740e40 224 /** @brief Enable the DAC channel
mbed_official 226:b062af740e40 225 * @param __HANDLE__: specifies the DAC handle.
mbed_official 226:b062af740e40 226 * @param __DAC_Channel__: specifies the DAC channel
mbed_official 226:b062af740e40 227 * @retval None
mbed_official 226:b062af740e40 228 */
mbed_official 87:085cde657901 229 #define __HAL_DAC_ENABLE(__HANDLE__, __DAC_Channel__) \
mbed_official 87:085cde657901 230 ((__HANDLE__)->Instance->CR |= (DAC_CR_EN1 << (__DAC_Channel__)))
mbed_official 87:085cde657901 231
mbed_official 226:b062af740e40 232 /** @brief Disable the DAC channel
mbed_official 226:b062af740e40 233 * @param __HANDLE__: specifies the DAC handle
mbed_official 226:b062af740e40 234 * @param __DAC_Channel__: specifies the DAC channel.
mbed_official 226:b062af740e40 235 * @retval None
mbed_official 226:b062af740e40 236 */
mbed_official 87:085cde657901 237 #define __HAL_DAC_DISABLE(__HANDLE__, __DAC_Channel__) \
mbed_official 87:085cde657901 238 ((__HANDLE__)->Instance->CR &= ~(DAC_CR_EN1 << (__DAC_Channel__)))
mbed_official 226:b062af740e40 239
mbed_official 226:b062af740e40 240 /** @brief Set DHR12R1 alignment
mbed_official 226:b062af740e40 241 * @param __ALIGNEMENT__: specifies the DAC alignement
mbed_official 226:b062af740e40 242 * @retval None
mbed_official 226:b062af740e40 243 */
mbed_official 87:085cde657901 244 #define __HAL_DHR12R1_ALIGNEMENT(__ALIGNEMENT__) (((uint32_t)0x00000008) + (__ALIGNEMENT__))
mbed_official 87:085cde657901 245
mbed_official 226:b062af740e40 246 /** @brief Set DHR12R2 alignment
mbed_official 226:b062af740e40 247 * @param __ALIGNEMENT__: specifies the DAC alignement
mbed_official 226:b062af740e40 248 * @retval None
mbed_official 226:b062af740e40 249 */
mbed_official 87:085cde657901 250 #define __HAL_DHR12R2_ALIGNEMENT(__ALIGNEMENT__) (((uint32_t)0x00000014) + (__ALIGNEMENT__))
mbed_official 87:085cde657901 251
mbed_official 226:b062af740e40 252 /** @brief Set DHR12RD alignment
mbed_official 226:b062af740e40 253 * @param __ALIGNEMENT__: specifies the DAC alignement
mbed_official 226:b062af740e40 254 * @retval None
mbed_official 226:b062af740e40 255 */
mbed_official 87:085cde657901 256 #define __HAL_DHR12RD_ALIGNEMENT(__ALIGNEMENT__) (((uint32_t)0x00000020) + (__ALIGNEMENT__))
mbed_official 87:085cde657901 257
mbed_official 226:b062af740e40 258 /** @brief Enable the DAC interrupt
mbed_official 226:b062af740e40 259 * @param __HANDLE__: specifies the DAC handle
mbed_official 226:b062af740e40 260 * @param __INTERRUPT__: specifies the DAC interrupt.
mbed_official 226:b062af740e40 261 * @retval None
mbed_official 226:b062af740e40 262 */
mbed_official 87:085cde657901 263 #define __HAL_DAC_ENABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->CR) |= (__INTERRUPT__))
mbed_official 87:085cde657901 264
mbed_official 226:b062af740e40 265 /** @brief Disable the DAC interrupt
mbed_official 226:b062af740e40 266 * @param __HANDLE__: specifies the DAC handle
mbed_official 226:b062af740e40 267 * @param __INTERRUPT__: specifies the DAC interrupt.
mbed_official 226:b062af740e40 268 * @retval None
mbed_official 226:b062af740e40 269 */
mbed_official 87:085cde657901 270 #define __HAL_DAC_DISABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->CR) &= ~(__INTERRUPT__))
mbed_official 87:085cde657901 271
mbed_official 226:b062af740e40 272 /** @brief Get the selected DAC's flag status.
mbed_official 226:b062af740e40 273 * @param __HANDLE__: specifies the DAC handle.
mbed_official 226:b062af740e40 274 * @retval None
mbed_official 226:b062af740e40 275 */
mbed_official 87:085cde657901 276 #define __HAL_DAC_GET_FLAG(__HANDLE__, __FLAG__) ((((__HANDLE__)->Instance->SR) & (__FLAG__)) == (__FLAG__))
mbed_official 87:085cde657901 277
mbed_official 226:b062af740e40 278 /** @brief Clear the DAC's flag.
mbed_official 226:b062af740e40 279 * @param __HANDLE__: specifies the DAC handle.
mbed_official 226:b062af740e40 280 * @retval None
mbed_official 226:b062af740e40 281 */
mbed_official 226:b062af740e40 282 #define __HAL_DAC_CLEAR_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR) |= (__FLAG__))
mbed_official 87:085cde657901 283
mbed_official 87:085cde657901 284 /* Include DAC HAL Extension module */
mbed_official 226:b062af740e40 285 #include "stm32f4xx_hal_dac_ex.h"
mbed_official 87:085cde657901 286
mbed_official 226:b062af740e40 287 /* Exported functions --------------------------------------------------------*/
mbed_official 226:b062af740e40 288 /* Initialization/de-initialization functions *********************************/
mbed_official 87:085cde657901 289 HAL_StatusTypeDef HAL_DAC_Init(DAC_HandleTypeDef* hdac);
mbed_official 87:085cde657901 290 HAL_StatusTypeDef HAL_DAC_DeInit(DAC_HandleTypeDef* hdac);
mbed_official 106:ced8cbb51063 291 void HAL_DAC_MspInit(DAC_HandleTypeDef* hdac);
mbed_official 106:ced8cbb51063 292 void HAL_DAC_MspDeInit(DAC_HandleTypeDef* hdac);
mbed_official 87:085cde657901 293
mbed_official 226:b062af740e40 294 /* I/O operation functions ****************************************************/
mbed_official 87:085cde657901 295 HAL_StatusTypeDef HAL_DAC_Start(DAC_HandleTypeDef* hdac, uint32_t Channel);
mbed_official 87:085cde657901 296 HAL_StatusTypeDef HAL_DAC_Stop(DAC_HandleTypeDef* hdac, uint32_t Channel);
mbed_official 87:085cde657901 297 HAL_StatusTypeDef HAL_DAC_Start_DMA(DAC_HandleTypeDef* hdac, uint32_t Channel, uint32_t* pData, uint32_t Length, uint32_t Alignment);
mbed_official 87:085cde657901 298 HAL_StatusTypeDef HAL_DAC_Stop_DMA(DAC_HandleTypeDef* hdac, uint32_t Channel);
mbed_official 87:085cde657901 299 uint32_t HAL_DAC_GetValue(DAC_HandleTypeDef* hdac, uint32_t Channel);
mbed_official 87:085cde657901 300
mbed_official 226:b062af740e40 301 /* Peripheral Control functions ***********************************************/
mbed_official 87:085cde657901 302 HAL_StatusTypeDef HAL_DAC_ConfigChannel(DAC_HandleTypeDef* hdac, DAC_ChannelConfTypeDef* sConfig, uint32_t Channel);
mbed_official 87:085cde657901 303 HAL_StatusTypeDef HAL_DAC_SetValue(DAC_HandleTypeDef* hdac, uint32_t Channel, uint32_t Alignment, uint32_t Data);
mbed_official 87:085cde657901 304
mbed_official 226:b062af740e40 305 /* Peripheral State functions *************************************************/
mbed_official 87:085cde657901 306 HAL_DAC_StateTypeDef HAL_DAC_GetState(DAC_HandleTypeDef* hdac);
mbed_official 87:085cde657901 307 void HAL_DAC_IRQHandler(DAC_HandleTypeDef* hdac);
mbed_official 87:085cde657901 308 uint32_t HAL_DAC_GetError(DAC_HandleTypeDef *hdac);
mbed_official 87:085cde657901 309
mbed_official 106:ced8cbb51063 310 void HAL_DAC_ConvCpltCallbackCh1(DAC_HandleTypeDef* hdac);
mbed_official 106:ced8cbb51063 311 void HAL_DAC_ConvHalfCpltCallbackCh1(DAC_HandleTypeDef* hdac);
mbed_official 106:ced8cbb51063 312 void HAL_DAC_ErrorCallbackCh1(DAC_HandleTypeDef *hdac);
mbed_official 106:ced8cbb51063 313 void HAL_DAC_DMAUnderrunCallbackCh1(DAC_HandleTypeDef *hdac);
mbed_official 87:085cde657901 314
mbed_official 87:085cde657901 315 #endif /* STM32F405xx || STM32F415xx || STM32F407xx || STM32F417xx || STM32F427xx || STM32F437xx || STM32F429xx || STM32F439xx */
mbed_official 87:085cde657901 316
mbed_official 87:085cde657901 317 /**
mbed_official 87:085cde657901 318 * @}
mbed_official 87:085cde657901 319 */
mbed_official 87:085cde657901 320
mbed_official 87:085cde657901 321 /**
mbed_official 87:085cde657901 322 * @}
mbed_official 87:085cde657901 323 */
mbed_official 87:085cde657901 324
mbed_official 87:085cde657901 325 #ifdef __cplusplus
mbed_official 87:085cde657901 326 }
mbed_official 87:085cde657901 327 #endif
mbed_official 87:085cde657901 328
mbed_official 87:085cde657901 329 #endif /*__STM32F4xx_HAL_DAC_H */
mbed_official 87:085cde657901 330
mbed_official 87:085cde657901 331 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/