#ifndef __DACS_H__ #define __DACS_H__ #include "dac.h" #include "lib.h" #include "main.h" /** * @brief DAC输出宏定义 */ #define DAC_OUT(DACx, DAC_Channel, Data) \ do \ { \ LL_DAC_ConvertData12RightAligned(DACx, DAC_Channel, Data); \ LL_DAC_TrigSWConversion(DACx, DAC_Channel); \ } while (__LINE__ == -1) #define DAC_START(DACx, DAC_Channel) LL_DAC_Enable(DACx, DAC_Channel) // 启动DAC #define DAC_STOP(DACx, DAC_Channel) LL_DAC_Disable(DACx, DAC_Channel) // 停止DAC /** * @brief DAC结构体定义 */ typedef struct DACS { DAC_TypeDef *dac; // DAC寄存器指针 uint16_t dac_channel; // DAC通道选择 void (*out)(struct DACS *dac, uint16_t value); // 输出函数指针 } dac_t; #endif