STM32F479xx HAL User Manual
Data Structures | Defines | Functions
stm32f4xx_ll_dac.h File Reference

Header file of DAC LL module. More...

#include "stm32f4xx.h"

Go to the source code of this file.

Data Structures

struct  LL_DAC_InitTypeDef
 Structure definition of some features of DAC instance. More...

Defines

#define DAC_CR_CH1_BITOFFSET
#define DAC_CR_CH2_BITOFFSET
#define DAC_CR_CHX_BITOFFSET_MASK   (DAC_CR_CH1_BITOFFSET | DAC_CR_CH2_BITOFFSET)
#define DAC_SWTR_CH1   (DAC_SWTRIGR_SWTRIG1) /* Channel bit into register SWTRIGR of channel 1. */
#define DAC_SWTR_CH2   (DAC_SWTRIGR_SWTRIG2) /* Channel bit into register SWTRIGR of channel 2. */
#define DAC_SWTR_CHX_MASK   (DAC_SWTR_CH1 | DAC_SWTR_CH2)
#define DAC_REG_DHR12R1_REGOFFSET   0x00000000UL /* Register DHR12Rx channel 1 taken as reference */
#define DAC_REG_DHR12L1_REGOFFSET
#define DAC_REG_DHR8R1_REGOFFSET
#define DAC_REG_DHR12R2_REGOFFSET
#define DAC_REG_DHR12L2_REGOFFSET
#define DAC_REG_DHR8R2_REGOFFSET
#define DAC_REG_DHR12RX_REGOFFSET_MASK   0x000F0000UL
#define DAC_REG_DHR12LX_REGOFFSET_MASK   0x00F00000UL
#define DAC_REG_DHR8RX_REGOFFSET_MASK   0x0F000000UL
#define DAC_REG_DHRX_REGOFFSET_MASK
#define DAC_REG_DOR1_REGOFFSET   0x00000000UL /* Register DORx channel 1 taken as reference */
#define DAC_REG_DOR2_REGOFFSET
#define DAC_REG_DORX_REGOFFSET_MASK   (DAC_REG_DOR1_REGOFFSET | DAC_REG_DOR2_REGOFFSET)
#define DAC_REG_DHR_REGOFFSET_MASK_POSBIT0
#define DAC_REG_DORX_REGOFFSET_MASK_POSBIT0
#define DAC_REG_SHSRX_REGOFFSET_MASK_POSBIT0
#define DAC_REG_DHR12RX_REGOFFSET_BITOFFSET_POS
#define DAC_REG_DHR12LX_REGOFFSET_BITOFFSET_POS
#define DAC_REG_DHR8RX_REGOFFSET_BITOFFSET_POS
#define DAC_REG_DORX_REGOFFSET_BITOFFSET_POS
#define DAC_DHR12RD_DACC2DHR_BITOFFSET_POS   DAC_DHR12RD_DACC2DHR_Pos
#define DAC_DHR12LD_DACC2DHR_BITOFFSET_POS   DAC_DHR12LD_DACC2DHR_Pos
#define DAC_DHR8RD_DACC2DHR_BITOFFSET_POS   DAC_DHR8RD_DACC2DHR_Pos
#define DAC_DIGITAL_SCALE_12BITS
#define __DAC_PTR_REG_OFFSET(__REG__, __REG_OFFFSET__)   ((uint32_t *)((uint32_t) ((uint32_t)(&(__REG__)) + ((__REG_OFFFSET__) << 2UL))))
 Driver macro reserved for internal use: set a pointer to a register from a register basis from which an offset is applied.
#define LL_DAC_FLAG_DMAUDR1   (DAC_SR_DMAUDR1)
#define LL_DAC_FLAG_DMAUDR2   (DAC_SR_DMAUDR2)
#define LL_DAC_IT_DMAUDRIE1   (DAC_CR_DMAUDRIE1)
#define LL_DAC_IT_DMAUDRIE2   (DAC_CR_DMAUDRIE2)
#define LL_DAC_CHANNEL_1   (DAC_REG_DOR1_REGOFFSET | DAC_REG_DHR12R1_REGOFFSET | DAC_REG_DHR12L1_REGOFFSET | DAC_REG_DHR8R1_REGOFFSET | DAC_CR_CH1_BITOFFSET | DAC_SWTR_CH1)
#define LL_DAC_CHANNEL_2   (DAC_REG_DOR2_REGOFFSET | DAC_REG_DHR12R2_REGOFFSET | DAC_REG_DHR12L2_REGOFFSET | DAC_REG_DHR8R2_REGOFFSET | DAC_CR_CH2_BITOFFSET | DAC_SWTR_CH2)
#define LL_DAC_TRIG_SOFTWARE   (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0)
#define LL_DAC_TRIG_EXT_TIM2_TRGO   (DAC_CR_TSEL1_2 )
#define LL_DAC_TRIG_EXT_TIM8_TRGO   ( DAC_CR_TSEL1_0)
#define LL_DAC_TRIG_EXT_TIM4_TRGO   (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_0)
#define LL_DAC_TRIG_EXT_TIM6_TRGO   0x00000000UL
#define LL_DAC_TRIG_EXT_TIM7_TRGO   ( DAC_CR_TSEL1_1 )
#define LL_DAC_TRIG_EXT_TIM5_TRGO   ( DAC_CR_TSEL1_1 | DAC_CR_TSEL1_0)
#define LL_DAC_TRIG_EXT_EXTI_LINE9   (DAC_CR_TSEL1_2 | DAC_CR_TSEL1_1 )
#define LL_DAC_WAVE_AUTO_GENERATION_NONE   0x00000000UL
#define LL_DAC_WAVE_AUTO_GENERATION_NOISE   ( DAC_CR_WAVE1_0)
#define LL_DAC_WAVE_AUTO_GENERATION_TRIANGLE   (DAC_CR_WAVE1_1 )
#define LL_DAC_NOISE_LFSR_UNMASK_BIT0   0x00000000UL
#define LL_DAC_NOISE_LFSR_UNMASK_BITS1_0   ( DAC_CR_MAMP1_0)
#define LL_DAC_NOISE_LFSR_UNMASK_BITS2_0   ( DAC_CR_MAMP1_1 )
#define LL_DAC_NOISE_LFSR_UNMASK_BITS3_0   ( DAC_CR_MAMP1_1 | DAC_CR_MAMP1_0)
#define LL_DAC_NOISE_LFSR_UNMASK_BITS4_0   ( DAC_CR_MAMP1_2 )
#define LL_DAC_NOISE_LFSR_UNMASK_BITS5_0   ( DAC_CR_MAMP1_2 | DAC_CR_MAMP1_0)
#define LL_DAC_NOISE_LFSR_UNMASK_BITS6_0   ( DAC_CR_MAMP1_2 | DAC_CR_MAMP1_1 )
#define LL_DAC_NOISE_LFSR_UNMASK_BITS7_0   ( DAC_CR_MAMP1_2 | DAC_CR_MAMP1_1 | DAC_CR_MAMP1_0)
#define LL_DAC_NOISE_LFSR_UNMASK_BITS8_0   (DAC_CR_MAMP1_3 )
#define LL_DAC_NOISE_LFSR_UNMASK_BITS9_0   (DAC_CR_MAMP1_3 | DAC_CR_MAMP1_0)
#define LL_DAC_NOISE_LFSR_UNMASK_BITS10_0   (DAC_CR_MAMP1_3 | DAC_CR_MAMP1_1 )
#define LL_DAC_NOISE_LFSR_UNMASK_BITS11_0   (DAC_CR_MAMP1_3 | DAC_CR_MAMP1_1 | DAC_CR_MAMP1_0)
#define LL_DAC_TRIANGLE_AMPLITUDE_1   0x00000000UL
#define LL_DAC_TRIANGLE_AMPLITUDE_3   ( DAC_CR_MAMP1_0)
#define LL_DAC_TRIANGLE_AMPLITUDE_7   ( DAC_CR_MAMP1_1 )
#define LL_DAC_TRIANGLE_AMPLITUDE_15   ( DAC_CR_MAMP1_1 | DAC_CR_MAMP1_0)
#define LL_DAC_TRIANGLE_AMPLITUDE_31   ( DAC_CR_MAMP1_2 )
#define LL_DAC_TRIANGLE_AMPLITUDE_63   ( DAC_CR_MAMP1_2 | DAC_CR_MAMP1_0)
#define LL_DAC_TRIANGLE_AMPLITUDE_127   ( DAC_CR_MAMP1_2 | DAC_CR_MAMP1_1 )
#define LL_DAC_TRIANGLE_AMPLITUDE_255   ( DAC_CR_MAMP1_2 | DAC_CR_MAMP1_1 | DAC_CR_MAMP1_0)
#define LL_DAC_TRIANGLE_AMPLITUDE_511   (DAC_CR_MAMP1_3 )
#define LL_DAC_TRIANGLE_AMPLITUDE_1023   (DAC_CR_MAMP1_3 | DAC_CR_MAMP1_0)
#define LL_DAC_TRIANGLE_AMPLITUDE_2047   (DAC_CR_MAMP1_3 | DAC_CR_MAMP1_1 )
#define LL_DAC_TRIANGLE_AMPLITUDE_4095   (DAC_CR_MAMP1_3 | DAC_CR_MAMP1_1 | DAC_CR_MAMP1_0)
#define LL_DAC_OUTPUT_BUFFER_ENABLE   0x00000000UL
#define LL_DAC_OUTPUT_BUFFER_DISABLE   (DAC_CR_BOFF1)
#define LL_DAC_RESOLUTION_12B   0x00000000UL
#define LL_DAC_RESOLUTION_8B   0x00000002UL
#define LL_DAC_DMA_REG_DATA_12BITS_RIGHT_ALIGNED   DAC_REG_DHR12RX_REGOFFSET_BITOFFSET_POS
#define LL_DAC_DMA_REG_DATA_12BITS_LEFT_ALIGNED   DAC_REG_DHR12LX_REGOFFSET_BITOFFSET_POS
#define LL_DAC_DMA_REG_DATA_8BITS_RIGHT_ALIGNED   DAC_REG_DHR8RX_REGOFFSET_BITOFFSET_POS
#define LL_DAC_DELAY_STARTUP_VOLTAGE_SETTLING_US   15UL
#define LL_DAC_DELAY_VOLTAGE_SETTLING_US   12UL
#define LL_DAC_WriteReg(__INSTANCE__, __REG__, __VALUE__)   WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
 Write a value in DAC register.
#define LL_DAC_ReadReg(__INSTANCE__, __REG__)   READ_REG(__INSTANCE__->__REG__)
 Read a value in DAC register.
#define __LL_DAC_CHANNEL_TO_DECIMAL_NB(__CHANNEL__)   ((__CHANNEL__) & DAC_SWTR_CHX_MASK)
 Helper macro to get DAC channel number in decimal format from literals LL_DAC_CHANNEL_x.
#define __LL_DAC_DECIMAL_NB_TO_CHANNEL(__DECIMAL_NB__)
 Helper macro to get DAC channel in literal format LL_DAC_CHANNEL_x from number in decimal format.
#define __LL_DAC_DIGITAL_SCALE(__DAC_RESOLUTION__)   ((0x00000FFFUL) >> ((__DAC_RESOLUTION__) << 1UL))
 Helper macro to define the DAC conversion data full-scale digital value corresponding to the selected DAC resolution.
#define __LL_DAC_CALC_VOLTAGE_TO_DATA(__VREFANALOG_VOLTAGE__, __DAC_VOLTAGE__, __DAC_RESOLUTION__)
 Helper macro to calculate the DAC conversion data (unit: digital value) corresponding to a voltage (unit: mVolt).

Functions

__STATIC_INLINE void LL_DAC_SetTriggerSource (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t TriggerSource)
 Set the conversion trigger source for the selected DAC channel.
__STATIC_INLINE uint32_t LL_DAC_GetTriggerSource (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get the conversion trigger source for the selected DAC channel.
__STATIC_INLINE void LL_DAC_SetWaveAutoGeneration (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t WaveAutoGeneration)
 Set the waveform automatic generation mode for the selected DAC channel.
__STATIC_INLINE uint32_t LL_DAC_GetWaveAutoGeneration (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get the waveform automatic generation mode for the selected DAC channel.
__STATIC_INLINE void LL_DAC_SetWaveNoiseLFSR (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t NoiseLFSRMask)
 Set the noise waveform generation for the selected DAC channel: Noise mode and parameters LFSR (linear feedback shift register).
__STATIC_INLINE uint32_t LL_DAC_GetWaveNoiseLFSR (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get the noise waveform generation for the selected DAC channel: Noise mode and parameters LFSR (linear feedback shift register).
__STATIC_INLINE void LL_DAC_SetWaveTriangleAmplitude (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t TriangleAmplitude)
 Set the triangle waveform generation for the selected DAC channel: triangle mode and amplitude.
__STATIC_INLINE uint32_t LL_DAC_GetWaveTriangleAmplitude (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get the triangle waveform generation for the selected DAC channel: triangle mode and amplitude.
__STATIC_INLINE void LL_DAC_SetOutputBuffer (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t OutputBuffer)
 Set the output buffer for the selected DAC channel.
__STATIC_INLINE uint32_t LL_DAC_GetOutputBuffer (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get the output buffer state for the selected DAC channel.
__STATIC_INLINE void LL_DAC_EnableDMAReq (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Enable DAC DMA transfer request of the selected channel.
__STATIC_INLINE void LL_DAC_DisableDMAReq (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Disable DAC DMA transfer request of the selected channel.
__STATIC_INLINE uint32_t LL_DAC_IsDMAReqEnabled (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get DAC DMA transfer request state of the selected channel.
__STATIC_INLINE uint32_t LL_DAC_DMA_GetRegAddr (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t Register)
 Function to help to configure DMA transfer to DAC: retrieve the DAC register address from DAC instance and a list of DAC registers intended to be used (most commonly) with DMA transfer.
__STATIC_INLINE void LL_DAC_Enable (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Enable DAC selected channel.
__STATIC_INLINE void LL_DAC_Disable (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Disable DAC selected channel.
__STATIC_INLINE uint32_t LL_DAC_IsEnabled (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get DAC enable state of the selected channel.
__STATIC_INLINE void LL_DAC_EnableTrigger (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Enable DAC trigger of the selected channel.
__STATIC_INLINE void LL_DAC_DisableTrigger (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Disable DAC trigger of the selected channel.
__STATIC_INLINE uint32_t LL_DAC_IsTriggerEnabled (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Get DAC trigger state of the selected channel.
__STATIC_INLINE void LL_DAC_TrigSWConversion (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Trig DAC conversion by software for the selected DAC channel.
__STATIC_INLINE void LL_DAC_ConvertData12RightAligned (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t Data)
 Set the data to be loaded in the data holding register in format 12 bits left alignment (LSB aligned on bit 0), for the selected DAC channel.
__STATIC_INLINE void LL_DAC_ConvertData12LeftAligned (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t Data)
 Set the data to be loaded in the data holding register in format 12 bits left alignment (MSB aligned on bit 15), for the selected DAC channel.
__STATIC_INLINE void LL_DAC_ConvertData8RightAligned (DAC_TypeDef *DACx, uint32_t DAC_Channel, uint32_t Data)
 Set the data to be loaded in the data holding register in format 8 bits left alignment (LSB aligned on bit 0), for the selected DAC channel.
__STATIC_INLINE void LL_DAC_ConvertDualData12RightAligned (DAC_TypeDef *DACx, uint32_t DataChannel1, uint32_t DataChannel2)
 Set the data to be loaded in the data holding register in format 12 bits left alignment (LSB aligned on bit 0), for both DAC channels.
__STATIC_INLINE void LL_DAC_ConvertDualData12LeftAligned (DAC_TypeDef *DACx, uint32_t DataChannel1, uint32_t DataChannel2)
 Set the data to be loaded in the data holding register in format 12 bits left alignment (MSB aligned on bit 15), for both DAC channels.
__STATIC_INLINE void LL_DAC_ConvertDualData8RightAligned (DAC_TypeDef *DACx, uint32_t DataChannel1, uint32_t DataChannel2)
 Set the data to be loaded in the data holding register in format 8 bits left alignment (LSB aligned on bit 0), for both DAC channels.
__STATIC_INLINE uint32_t LL_DAC_RetrieveOutputData (DAC_TypeDef *DACx, uint32_t DAC_Channel)
 Retrieve output data currently generated for the selected DAC channel.
__STATIC_INLINE uint32_t LL_DAC_IsActiveFlag_DMAUDR1 (DAC_TypeDef *DACx)
 Get DAC underrun flag for DAC channel 1.
__STATIC_INLINE uint32_t LL_DAC_IsActiveFlag_DMAUDR2 (DAC_TypeDef *DACx)
 Get DAC underrun flag for DAC channel 2.
__STATIC_INLINE void LL_DAC_ClearFlag_DMAUDR1 (DAC_TypeDef *DACx)
 Clear DAC underrun flag for DAC channel 1.
__STATIC_INLINE void LL_DAC_ClearFlag_DMAUDR2 (DAC_TypeDef *DACx)
 Clear DAC underrun flag for DAC channel 2.
__STATIC_INLINE void LL_DAC_EnableIT_DMAUDR1 (DAC_TypeDef *DACx)
 Enable DMA underrun interrupt for DAC channel 1.
__STATIC_INLINE void LL_DAC_EnableIT_DMAUDR2 (DAC_TypeDef *DACx)
 Enable DMA underrun interrupt for DAC channel 2.
__STATIC_INLINE void LL_DAC_DisableIT_DMAUDR1 (DAC_TypeDef *DACx)
 Disable DMA underrun interrupt for DAC channel 1.
__STATIC_INLINE void LL_DAC_DisableIT_DMAUDR2 (DAC_TypeDef *DACx)
 Disable DMA underrun interrupt for DAC channel 2.
__STATIC_INLINE uint32_t LL_DAC_IsEnabledIT_DMAUDR1 (DAC_TypeDef *DACx)
 Get DMA underrun interrupt for DAC channel 1.
__STATIC_INLINE uint32_t LL_DAC_IsEnabledIT_DMAUDR2 (DAC_TypeDef *DACx)
 Get DMA underrun interrupt for DAC channel 2.
ErrorStatus LL_DAC_DeInit (DAC_TypeDef *DACx)
 De-initialize registers of the selected DAC instance to their default reset values.
ErrorStatus LL_DAC_Init (DAC_TypeDef *DACx, uint32_t DAC_Channel, LL_DAC_InitTypeDef *DAC_InitStruct)
 Initialize some features of DAC channel.
void LL_DAC_StructInit (LL_DAC_InitTypeDef *DAC_InitStruct)
 Set each LL_DAC_InitTypeDef field to default value.

Detailed Description

Header file of DAC LL module.

Author:
MCD Application Team
Attention:

© Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file stm32f4xx_ll_dac.h.