STM32G474xx HAL 用户手册
宏定义
DAC 辅助宏
DAC 导出的宏

宏定义

#define __LL_DAC_CHANNEL_TO_DECIMAL_NB(__CHANNEL__)   ((__CHANNEL__) & DAC_SWTR_CHX_MASK)
 辅助宏:从字面量 LL_DAC_CHANNEL_x 获取 DAC 通道编号(十进制格式)。
#define __LL_DAC_DECIMAL_NB_TO_CHANNEL(__DECIMAL_NB__)   (((__DECIMAL_NB__) == 1UL)? (LL_DAC_CHANNEL_1 ):(((__DECIMAL_NB__) == 2UL) ? ( LL_DAC_CHANNEL_2):(0UL)))
 辅助宏:从十进制格式编号获取 DAC 通道字面量 LL_DAC_CHANNEL_x。
#define __LL_DAC_DIGITAL_SCALE(__DAC_RESOLUTION__)   ((0x00000FFFUL) >> ((__DAC_RESOLUTION__) << 1UL))
 辅助宏:定义与所选 DAC 分辨率对应的 DAC 转换数据满量程数字值。
#define __LL_DAC_CALC_VOLTAGE_TO_DATA(__VREFANALOG_VOLTAGE__, __DAC_VOLTAGE__, __DAC_RESOLUTION__)
 辅助宏:计算与电压(单位:毫伏)对应的 DAC 转换数据(单位:数字值)。
#define __LL_DAC_FORMAT_SAWTOOTHWAVECONFIG(__POLARITY__, __RESET_DATA__, __STEP_DATA__)
 辅助宏:格式化锯齿波生成配置值,用于填充 LL_DAC_InitTypeDef 的 WaveAutoGenerationConfig 参数。

宏定义文档

#define __LL_DAC_CALC_VOLTAGE_TO_DATA (   __VREFANALOG_VOLTAGE__,
  __DAC_VOLTAGE__,
  __DAC_RESOLUTION__ 
)
值:
((__DAC_VOLTAGE__) * __LL_DAC_DIGITAL_SCALE(__DAC_RESOLUTION__)                                      \
   / (__VREFANALOG_VOLTAGE__)                                                                          \
  )

辅助宏:计算与电压(单位:毫伏)对应的 DAC 转换数据(单位:数字值)。

注意:
此辅助宏旨在提供电压形式的输入数据,而非数字值,以便与 LL DAC 函数(如 LL_DAC_ConvertData12RightAligned())一起使用。
模拟参考电压(Vref+)必须已知(来自用户板环境),或可通过 ADC 测量和 ADC 辅助宏 __LL_ADC_CALC_VREFANALOG_VOLTAGE() 计算得出。
参数:
__VREFANALOG_VOLTAGE__模拟参考电压(单位:mV)
__DAC_VOLTAGE__DAC 通道要生成的电压(单位:mV)。
__DAC_RESOLUTION__此参数可以是以下值之一:
返回值:
DAC转换数据(单位:数字值)

定义位于文件 587 行,文件名为 stm32g4xx_ll_dac.h

#define __LL_DAC_CHANNEL_TO_DECIMAL_NB (   __CHANNEL__)    ((__CHANNEL__) & DAC_SWTR_CHX_MASK)

辅助宏:从字面量 LL_DAC_CHANNEL_x 获取 DAC 通道编号(十进制格式)。

示例:__LL_DAC_CHANNEL_TO_DECIMAL_NB(LL_DAC_CHANNEL_1) 将返回十进制数字 "1"。

注意:
输入可以是从函数中返回通道编号的值。
参数:
__CHANNEL__此参数可以是以下值之一: (1) 在此 STM32 系列中,该参数并非在所有实例上均可用。有关通道可用性,请参阅器件数据手册。
返回值:
1...2

定义位于文件 533 行,文件名为 stm32g4xx_ll_dac.h

#define __LL_DAC_DECIMAL_NB_TO_CHANNEL (   __DECIMAL_NB__)    (((__DECIMAL_NB__) == 1UL)? (LL_DAC_CHANNEL_1 ):(((__DECIMAL_NB__) == 2UL) ? ( LL_DAC_CHANNEL_2):(0UL)))

辅助宏:从十进制格式编号获取 DAC 通道字面量 LL_DAC_CHANNEL_x。

示例:__LL_DAC_DECIMAL_NB_TO_CHANNEL(1) 将返回等价于 "LL_DAC_CHANNEL_1" 的数据。

注意:
如果输入参数不对应任何 DAC 通道,此宏返回值 '0'。
参数:
__DECIMAL_NB__1...2
返回值:
返回的值可以是以下值之一: (1) 在此 STM32 系列中,该参数并非在所有实例上均可用。有关通道可用性,请参阅器件数据手册。

定义位于文件 552 行,文件名为 stm32g4xx_ll_dac.h

#define __LL_DAC_DIGITAL_SCALE (   __DAC_RESOLUTION__)    ((0x00000FFFUL) >> ((__DAC_RESOLUTION__) << 1UL))

辅助宏:定义与所选 DAC 分辨率对应的 DAC 转换数据满量程数字值。

注意:
DAC 转换数据满量程对应于由模拟参考电压 Vref+ 和 Vref- 确定的电压范围(请参阅参考手册)。
参数:
__DAC_RESOLUTION__此参数可以是以下值之一:
返回值:
ADC转换数据等效电压值(单位:mV)

定义位于文件 566 行,文件名为 stm32g4xx_ll_dac.h

#define __LL_DAC_FORMAT_SAWTOOTHWAVECONFIG (   __POLARITY__,
  __RESET_DATA__,
  __STEP_DATA__ 
)
值:
( (((__STEP_DATA__) << DAC_STR1_STINCDATA1_Pos) & DAC_STR1_STINCDATA1_Msk)                          \
    | ((__POLARITY__) & DAC_STR1_STDIR1_Msk)                                                          \
    | (((__RESET_DATA__) << DAC_STR1_STRSTDATA1_Pos) & DAC_STR1_STRSTDATA1_Msk)                       \
  )

辅助宏:格式化锯齿波生成配置值,用于填充 LL_DAC_InitTypeDef 的 WaveAutoGenerationConfig 参数。

注意:
此辅助宏将格式化信息以适配 DAC_STRx 寄存器格式。
参数:
__POLARITY__锯齿波极性(必须是 DAC 波形生成 - 锯齿波极性模式 的值)
__RESET_DATA__锯齿波复位数据。
__STEP_DATA__锯齿波步进数据
返回值:
锯齿波配置,组织为 DAC_STRx 兼容格式。

定义位于文件 601 行,文件名为 stm32g4xx_ll_dac.h