STM32L4xx_HAL_Driver  1.14.0
stm32l4xx_hal_dac.h
Go to the documentation of this file.
1 
20 /* Define to prevent recursive inclusion -------------------------------------*/
21 #ifndef STM32L4xx_HAL_DAC_H
22 #define STM32L4xx_HAL_DAC_H
23 
24 #ifdef __cplusplus
25  extern "C" {
26 #endif
27 
32 /* Includes ------------------------------------------------------------------*/
33 #include "stm32l4xx_hal_def.h"
34 
35 #if defined(DAC1)
36 
41 /* Exported types ------------------------------------------------------------*/
42 
50 typedef enum
51 {
52  HAL_DAC_STATE_RESET = 0x00U,
53  HAL_DAC_STATE_READY = 0x01U,
54  HAL_DAC_STATE_BUSY = 0x02U,
55  HAL_DAC_STATE_TIMEOUT = 0x03U,
56  HAL_DAC_STATE_ERROR = 0x04U
58 } HAL_DAC_StateTypeDef;
59 
63 #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
64 typedef struct __DAC_HandleTypeDef
65 #else
66 typedef struct
67 #endif
68 {
69  DAC_TypeDef *Instance;
71  __IO HAL_DAC_StateTypeDef State;
73  HAL_LockTypeDef Lock;
79  __IO uint32_t ErrorCode;
81 #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
82  void (* ConvCpltCallbackCh1) (struct __DAC_HandleTypeDef *hdac);
83  void (* ConvHalfCpltCallbackCh1) (struct __DAC_HandleTypeDef *hdac);
84  void (* ErrorCallbackCh1) (struct __DAC_HandleTypeDef *hdac);
85  void (* DMAUnderrunCallbackCh1) (struct __DAC_HandleTypeDef *hdac);
86  void (* ConvCpltCallbackCh2) (struct __DAC_HandleTypeDef *hdac);
87  void (* ConvHalfCpltCallbackCh2) (struct __DAC_HandleTypeDef *hdac);
88  void (* ErrorCallbackCh2) (struct __DAC_HandleTypeDef *hdac);
89  void (* DMAUnderrunCallbackCh2) (struct __DAC_HandleTypeDef *hdac);
90 
91  void (* MspInitCallback) (struct __DAC_HandleTypeDef *hdac);
92  void (* MspDeInitCallback ) (struct __DAC_HandleTypeDef *hdac);
93 #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
94 
96 
100 typedef struct
101 {
102  uint32_t DAC_SampleTime ;
106  uint32_t DAC_HoldTime ;
110  uint32_t DAC_RefreshTime ;
114 
118 typedef struct
119 {
120 #if defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined(STM32L4S9xx)
121  uint32_t DAC_HighFrequency;
123 #endif /* STM32L4R5xx STM32L4R7xx STM32L4R9xx STM32L4S5xx STM32L4S7xx STM32L4S9xx */
124 
125  uint32_t DAC_SampleAndHold;
128  uint32_t DAC_Trigger;
131  uint32_t DAC_OutputBuffer;
137  uint32_t DAC_UserTrimming;
141  uint32_t DAC_TrimmingValue;
148 
149 #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
150 
153 typedef enum
154 {
167 
172 #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
173 
178 /* Exported constants --------------------------------------------------------*/
179 
187 #define HAL_DAC_ERROR_NONE 0x00U
188 #define HAL_DAC_ERROR_DMAUNDERRUNCH1 0x01U
189 #define HAL_DAC_ERROR_DMAUNDERRUNCH2 0x02U
190 #define HAL_DAC_ERROR_DMA 0x04U
191 #define HAL_DAC_ERROR_TIMEOUT 0x08U
192 #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
193 #define HAL_DAC_ERROR_INVALID_CALLBACK 0x10U
194 #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
195 
204 #if defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx)
205 #define DAC_TRIGGER_NONE 0x00000000U
207 #define DAC_TRIGGER_T2_TRGO (DAC_CR_TSEL1_2 | DAC_CR_TEN1)
208 #define DAC_TRIGGER_T6_TRGO ( DAC_CR_TEN1)
209 #define DAC_TRIGGER_T7_TRGO ( DAC_CR_TSEL1_1 | DAC_CR_TEN1)
210 #define DAC_TRIGGER_EXT_IT9 (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)
211 #define DAC_TRIGGER_SOFTWARE ( DAC_CR_TSEL1 | DAC_CR_TEN1)
212 #endif /* STM32L431xx STM32L432xx STM32L433xx STM32L442xx STM32L443xx */
213 
214 #if defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx)
215 #define DAC_TRIGGER_NONE 0x00000000U
217 #define DAC_TRIGGER_T2_TRGO (DAC_CR_TSEL1_2 | DAC_CR_TEN1)
218 #define DAC_TRIGGER_T6_TRGO ( DAC_CR_TEN1)
219 #define DAC_TRIGGER_EXT_IT9 (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)
220 #define DAC_TRIGGER_SOFTWARE ( DAC_CR_TSEL1 | DAC_CR_TEN1)
221 #endif /* STM32L451xx STM32L452xx STM32L462xx */
222 
223 #if defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) || defined (STM32L496xx) || defined (STM32L4A6xx)
224 #define DAC_TRIGGER_NONE 0x00000000U
226 #define DAC_TRIGGER_T2_TRGO (DAC_CR_TSEL1_2 | DAC_CR_TEN1)
227 #define DAC_TRIGGER_T4_TRGO (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
228 #define DAC_TRIGGER_T5_TRGO ( DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
229 #define DAC_TRIGGER_T6_TRGO ( DAC_CR_TEN1)
230 #define DAC_TRIGGER_T7_TRGO ( DAC_CR_TSEL1_1 | DAC_CR_TEN1)
231 #define DAC_TRIGGER_T8_TRGO ( DAC_CR_TSEL1_0 | DAC_CR_TEN1)
232 #define DAC_TRIGGER_EXT_IT9 (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)
233 #define DAC_TRIGGER_SOFTWARE ( DAC_CR_TSEL1 | DAC_CR_TEN1)
234 #endif /* STM32L471xx STM32L475xx STM32L476xx STM32L485xx STM32L486xx STM32L496xx STM32L4A6xx*/
235 
236 
237 #if defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined(STM32L4S9xx)
238 #define DAC_TRIGGER_NONE 0x00000000U
239 #define DAC_TRIGGER_SOFTWARE ( DAC_CR_TEN1)
240 #define DAC_TRIGGER_T1_TRGO ( DAC_CR_TSEL1_0 | DAC_CR_TEN1)
241 #define DAC_TRIGGER_T2_TRGO ( DAC_CR_TSEL1_1 | DAC_CR_TEN1)
242 #define DAC_TRIGGER_T4_TRGO ( DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
243 #define DAC_TRIGGER_T5_TRGO ( DAC_CR_TSEL1_2 | DAC_CR_TEN1)
244 #define DAC_TRIGGER_T6_TRGO ( DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
245 #define DAC_TRIGGER_T7_TRGO ( DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TEN1)
246 #define DAC_TRIGGER_T8_TRGO ( DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
247 #define DAC_TRIGGER_T15_TRGO (DAC_CR_TSEL1_3 | DAC_CR_TEN1)
248 #define DAC_TRIGGER_LPTIM1_OUT (DAC_CR_TSEL1_3 | DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
249 #define DAC_TRIGGER_LPTIM2_OUT (DAC_CR_TSEL1_3 | DAC_CR_TSEL1_2 | DAC_CR_TEN1)
250 #define DAC_TRIGGER_EXT_IT9 (DAC_CR_TSEL1_3 | DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0 | DAC_CR_TEN1)
252 #endif /* STM32L4R5xx STM32L4R7xx STM32L4R9xx STM32L4S5xx STM32L4S7xx STM32L4S9xx */
253 
254 
262 #define DAC_OUTPUTBUFFER_ENABLE 0x00000000U
263 #define DAC_OUTPUTBUFFER_DISABLE (DAC_MCR_MODE1_1)
264 
272 #define DAC_CHANNEL_1 0x00000000U
273 #if defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || \
274  defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) || defined (STM32L496xx) || defined (STM32L4A6xx) || \
275  defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined(STM32L4S9xx)
276 #define DAC_CHANNEL_2 0x00000010U
277 #endif /* STM32L431xx STM32L432xx STM32L433xx STM32L442xx STM32L443xx */
278  /* STM32L471xx STM32L475xx STM32L476xx STM32L485xx STM32L486xx STM32L496xx STM32L4A6xx */
279  /* STM32L4R5xx STM32L4R7xx STM32L4R9xx STM32L4S5xx STM32L4S7xx STM32L4S9xx */
280 
288 #define DAC_ALIGN_12B_R 0x00000000U
289 #define DAC_ALIGN_12B_L 0x00000004U
290 #define DAC_ALIGN_8B_R 0x00000008U
291 
299 #define DAC_FLAG_DMAUDR1 (DAC_SR_DMAUDR1)
300 #define DAC_FLAG_DMAUDR2 (DAC_SR_DMAUDR2)
301 
309 #define DAC_IT_DMAUDR1 (DAC_SR_DMAUDR1)
310 #define DAC_IT_DMAUDR2 (DAC_SR_DMAUDR2)
311 
319 #define DAC_CHIPCONNECT_DISABLE 0x00000000U
320 #define DAC_CHIPCONNECT_ENABLE (DAC_MCR_MODE1_0)
321 
329 #define DAC_TRIMMING_FACTORY 0x00000000U
330 #define DAC_TRIMMING_USER 0x00000001U
339 #define DAC_SAMPLEANDHOLD_DISABLE 0x00000000U
340 #define DAC_SAMPLEANDHOLD_ENABLE (DAC_MCR_MODE1_2)
341 
345 #if defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined(STM32L4S9xx)
346 
349 #define DAC_HIGH_FREQUENCY_INTERFACE_MODE_DISABLE 0x00000000U
350 #define DAC_HIGH_FREQUENCY_INTERFACE_MODE_ABOVE_80MHZ (DAC_CR_HFSEL)
351 #define DAC_HIGH_FREQUENCY_INTERFACE_MODE_AUTOMATIC 0x00000002U
356 #endif /* STM32L4R5xx STM32L4R7xx STM32L4R9xx STM32L4S5xx STM32L4S7xx STM32L4S9xx */
357 
362 /* Exported macro ------------------------------------------------------------*/
363 
372 #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
373 #define __HAL_DAC_RESET_HANDLE_STATE(__HANDLE__) do { \
374  (__HANDLE__)->State = HAL_DAC_STATE_RESET; \
375  (__HANDLE__)->MspInitCallback = NULL; \
376  (__HANDLE__)->MspDeInitCallback = NULL; \
377  } while(0)
378 #else
379 #define __HAL_DAC_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_DAC_STATE_RESET)
380 #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
381 
387 #define __HAL_DAC_ENABLE(__HANDLE__, __DAC_Channel__) \
388 ((__HANDLE__)->Instance->CR |= (DAC_CR_EN1 << ((__DAC_Channel__) & 0x10UL)))
389 
395 #define __HAL_DAC_DISABLE(__HANDLE__, __DAC_Channel__) \
396 ((__HANDLE__)->Instance->CR &= ~(DAC_CR_EN1 << ((__DAC_Channel__) & 0x10UL)))
397 
402 #define DAC_DHR12R1_ALIGNMENT(__ALIGNMENT__) (0x00000008U + (__ALIGNMENT__))
403 
408 #define DAC_DHR12R2_ALIGNMENT(__ALIGNMENT__) (0x00000014U + (__ALIGNMENT__))
409 
414 #define DAC_DHR12RD_ALIGNMENT(__ALIGNMENT__) (0x00000020U + (__ALIGNMENT__))
415 
424 #define __HAL_DAC_ENABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->CR) |= (__INTERRUPT__))
425 
434 #define __HAL_DAC_DISABLE_IT(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->CR) &= ~(__INTERRUPT__))
435 
444 #define __HAL_DAC_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->CR & (__INTERRUPT__)) == (__INTERRUPT__))
445 
454 #define __HAL_DAC_GET_FLAG(__HANDLE__, __FLAG__) ((((__HANDLE__)->Instance->SR) & (__FLAG__)) == (__FLAG__))
455 
464 #define __HAL_DAC_CLEAR_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR) = (__FLAG__))
465 
470 /* Private macro -------------------------------------------------------------*/
471 
475 #define IS_DAC_OUTPUT_BUFFER_STATE(STATE) (((STATE) == DAC_OUTPUTBUFFER_ENABLE) || \
476  ((STATE) == DAC_OUTPUTBUFFER_DISABLE))
477 
478 #if defined (STM32L431xx) || defined (STM32L432xx) || defined (STM32L433xx) || defined (STM32L442xx) || defined (STM32L443xx) || \
479  defined (STM32L471xx) || defined (STM32L475xx) || defined (STM32L476xx) || defined (STM32L485xx) || defined (STM32L486xx) || defined (STM32L496xx) || defined (STM32L4A6xx) || \
480  defined (STM32L4R5xx) || defined (STM32L4R7xx) || defined (STM32L4R9xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined(STM32L4S9xx)
481 #define IS_DAC_CHANNEL(CHANNEL) (((CHANNEL) == DAC_CHANNEL_1) || \
482  ((CHANNEL) == DAC_CHANNEL_2))
483 #endif /* STM32L431xx STM32L432xx STM32L433xx STM32L442xx STM32L443xx */
484  /* STM32L471xx STM32L475xx STM32L476xx STM32L485xx STM32L486xx STM32L496xx STM32L4A6xx */
485  /* STM32L4R5xx STM32L4R7xx STM32L4R9xx STM32L4S5xx STM32L4S7xx STM32L4S9xx */
486 
487 #if defined (STM32L451xx) || defined (STM32L452xx) || defined (STM32L462xx)
488 #define IS_DAC_CHANNEL(CHANNEL) ((CHANNEL) == DAC_CHANNEL_1)
489 #endif /* STM32L451xx STM32L452xx STM32L462xx */
490 
491 #define IS_DAC_ALIGN(ALIGN) (((ALIGN) == DAC_ALIGN_12B_R) || \
492  ((ALIGN) == DAC_ALIGN_12B_L) || \
493  ((ALIGN) == DAC_ALIGN_8B_R))
494 
495 #define IS_DAC_DATA(DATA) ((DATA) <= 0xFFF0U)
496 
497 #define IS_DAC_REFRESHTIME(TIME) ((TIME) <= 0x000000FFU)
498 
503 /* Include DAC HAL Extended module */
504 #include "stm32l4xx_hal_dac_ex.h"
505 
506 /* Exported functions --------------------------------------------------------*/
507 
515 /* Initialization and de-initialization functions *****************************/
516 HAL_StatusTypeDef HAL_DAC_Init(DAC_HandleTypeDef *hdac);
517 HAL_StatusTypeDef HAL_DAC_DeInit(DAC_HandleTypeDef *hdac);
520 
528 /* IO operation functions *****************************************************/
529 HAL_StatusTypeDef HAL_DAC_Start(DAC_HandleTypeDef *hdac, uint32_t Channel);
530 HAL_StatusTypeDef HAL_DAC_Stop(DAC_HandleTypeDef *hdac, uint32_t Channel);
531 HAL_StatusTypeDef HAL_DAC_Start_DMA(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_t *pData, uint32_t Length,
532  uint32_t Alignment);
533 HAL_StatusTypeDef HAL_DAC_Stop_DMA(DAC_HandleTypeDef *hdac, uint32_t Channel);
534 
536 
537 HAL_StatusTypeDef HAL_DAC_SetValue(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_t Alignment, uint32_t Data);
538 
543 
544 #if (USE_HAL_DAC_REGISTER_CALLBACKS == 1)
545 /* DAC callback registering/unregistering */
546 HAL_StatusTypeDef HAL_DAC_RegisterCallback(DAC_HandleTypeDef *hdac, HAL_DAC_CallbackIDTypeDef CallbackID,
547  pDAC_CallbackTypeDef pCallback);
548 HAL_StatusTypeDef HAL_DAC_UnRegisterCallback(DAC_HandleTypeDef *hdac, HAL_DAC_CallbackIDTypeDef CallbackID);
549 #endif /* USE_HAL_DAC_REGISTER_CALLBACKS */
550 
558 /* Peripheral Control functions ***********************************************/
559 uint32_t HAL_DAC_GetValue(DAC_HandleTypeDef *hdac, uint32_t Channel);
560 
561 HAL_StatusTypeDef HAL_DAC_ConfigChannel(DAC_HandleTypeDef *hdac, DAC_ChannelConfTypeDef *sConfig, uint32_t Channel);
569 /* Peripheral State and Error functions ***************************************/
570 HAL_DAC_StateTypeDef HAL_DAC_GetState(DAC_HandleTypeDef *hdac);
571 uint32_t HAL_DAC_GetError(DAC_HandleTypeDef *hdac);
572 
595 #endif /* DAC1 */
596 
601 #ifdef __cplusplus
602 }
603 #endif
604 
605 
606 #endif /*STM32L4xx_HAL_DAC_H */
607 
608 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
609 
void(* pDAC_CallbackTypeDef)(DAC_HandleTypeDef *hdac)
HAL DAC Callback pointer definition.
struct __DAC_HandleTypeDef else typedef struct endif DAC_HandleTypeDef
DAC handle Structure definition.
HAL_DAC_CallbackIDTypeDef
HAL DAC Callback ID enumeration definition.
HAL_StatusTypeDef HAL_DAC_DeInit(DAC_HandleTypeDef *hdac)
Deinitialize the DAC peripheral registers to their default reset values.
void DAC_DMAErrorCh1(DMA_HandleTypeDef *hdma)
DMA error callback.
HAL_StatusTypeDef HAL_DAC_Init(DAC_HandleTypeDef *hdac)
Initialize the DAC peripheral according to the specified parameters in the DAC_InitStruct and initial...
HAL_StatusTypeDef HAL_DAC_Start_DMA(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_t *pData, uint32_t Length, uint32_t Alignment)
Enables DAC and starts conversion of channel.
HAL_DAC_StateTypeDef HAL_DAC_GetState(DAC_HandleTypeDef *hdac)
return the DAC handle state
HAL_StatusTypeDef HAL_DAC_UnRegisterCallback(DAC_HandleTypeDef *hdac, HAL_DAC_CallbackIDTypeDef CallbackID)
Unregister a User DAC Callback DAC Callback is redirected to the weak (surcharged) predefined callbac...
DMA handle Structure definition.
DAC Configuration regular Channel structure definition.
This file contains HAL common defines, enumeration, macros and structures definitions.
uint32_t HAL_DAC_GetError(DAC_HandleTypeDef *hdac)
Return the DAC error code.
DAC_TypeDef * Instance
void DAC_DMAHalfConvCpltCh1(DMA_HandleTypeDef *hdma)
DMA half transfer complete callback.
void HAL_DAC_ConvHalfCpltCallbackCh1(DAC_HandleTypeDef *hdac)
Conversion half DMA transfer callback in non-blocking mode for Channel1.
void HAL_DAC_DMAUnderrunCallbackCh1(DAC_HandleTypeDef *hdac)
DMA underrun DAC callback for channel1.
HAL_StatusTypeDef HAL_DAC_RegisterCallback(DAC_HandleTypeDef *hdac, HAL_DAC_CallbackIDTypeDef CallbackID, pDAC_CallbackTypeDef pCallback)
Register a User DAC Callback To be used instead of the weak (surcharged) predefined callback...
HAL_StatusTypeDef HAL_DAC_Stop(DAC_HandleTypeDef *hdac, uint32_t Channel)
Disables DAC and stop conversion of channel.
DMA_HandleTypeDef * DMA_Handle2
void DAC_DMAConvCpltCh1(DMA_HandleTypeDef *hdma)
DMA conversion complete callback.
Header file of DAC HAL Extended module.
HAL_StatusTypeDef HAL_DAC_SetValue(DAC_HandleTypeDef *hdac, uint32_t Channel, uint32_t Alignment, uint32_t Data)
Set the specified data holding register value for DAC channel.
HAL_StatusTypeDef HAL_DAC_Stop_DMA(DAC_HandleTypeDef *hdac, uint32_t Channel)
Disables DAC and stop conversion of channel.
DAC Configuration sample and hold Channel structure definition.
void HAL_DAC_ErrorCallbackCh1(DAC_HandleTypeDef *hdac)
Error DAC callback for Channel1.
HAL_StatusTypeDef HAL_DAC_ConfigChannel(DAC_HandleTypeDef *hdac, DAC_ChannelConfTypeDef *sConfig, uint32_t Channel)
Configures the selected DAC channel.
void HAL_DAC_ConvCpltCallbackCh1(DAC_HandleTypeDef *hdac)
Conversion complete callback in non-blocking mode for Channel1.
HAL_LockTypeDef
HAL Lock structures definition.
DMA_HandleTypeDef * DMA_Handle1
DAC_SampleAndHoldConfTypeDef DAC_SampleAndHoldConfig
ADC handle Structure definition.
void HAL_DAC_MspDeInit(DAC_HandleTypeDef *hdac)
DeInitialize the DAC MSP.
void HAL_DAC_IRQHandler(DAC_HandleTypeDef *hdac)
Handles DAC interrupt request This function uses the interruption of DMA underrun.
void HAL_DAC_MspInit(DAC_HandleTypeDef *hdac)
Initialize the DAC MSP.
__IO HAL_DAC_StateTypeDef State
HAL_StatusTypeDef HAL_DAC_Start(DAC_HandleTypeDef *hdac, uint32_t Channel)
Enables DAC and starts conversion of channel.
uint32_t HAL_DAC_GetValue(DAC_HandleTypeDef *hdac, uint32_t Channel)
Returns the last data output value of the selected DAC channel.