CubeMX系列教程——17 DAC输出

复制ADC中断章节工程,重命名为DAC。

查看参考手册,了解DAC的简介

CubeMX系列教程——17 DAC输出

CubeMX系列教程——17 DAC输出

CubeMX系列教程——17 DAC输出

查看数据手册,DAC的输出通道为PA4和PA5,PA5已经设置为输入电压采集功能,所以这里设置PA4为DAC的输出通道,即DAC的输出通道1

CubeMX系列教程——17 DAC输出

我们这里设置12位模式下数据右对齐,不生成波形或者噪声。打开CubeMX工程配置DAC。选择OUT1 Configuration,输出缓冲使能,无触发。生成MDK代码初始化工程,并打开。

CubeMX系列教程——17 DAC输出

使用adc1采集dac输出的电压并且打印显示,使用杜邦线将PA4和PA5短接。在工程中修改代码,使能中断连续标志。

CubeMX系列教程——17 DAC输出

添加ADC的中断回调函数,在回调函数中获取输入转化后的数字量。

CubeMX系列教程——17 DAC输出

在main.c文件中添加代码,DA_Value变量为DAC输出的数字量,根据公式可以输出成对应的电压值。

CubeMX系列教程——17 DAC输出

CubeMX系列教程——17 DAC输出

添加测试代码,开启ADC的中断,DAC的输出。

CubeMX系列教程——17 DAC输出

在主函数while(1)中添加测试代码,将输出的电压值采集并且打印显示。

CubeMX系列教程——17 DAC输出

编译查看测试结果

CubeMX系列教程——17 DAC输出

修改DA_Value变量的值

CubeMX系列教程——17 DAC输出

查看测试结果

CubeMX系列教程——17 DAC输出