[STM32]DAC全解分析

Stm32F1 Dac 全解分析存在疑问VREF 能不能大于VDDA允许同步更新是什么意思输出缓存原理和具体影响DAC简介主要特点:+ 2个DAC转换器,支持两路输出+ 8位或者12位数字输入,12位需要设置数据对齐方向(左对齐或右对齐)+ 允许同步更新+ 生成噪声或者三角波+ 双DAC同时或者分别转换+ 每个通道有DMA功能+ 外部触发转换+ 输入参考电压简单...
摘要由CSDN通过智能技术生成

Stm32F1 Dac 全解分析

存在疑问

  1. VREF 能不能大于VDDA
  2. 允许同步更新是什么意思
  3. 输出缓存原理和具体影响

DAC简介

主要特点:

+ 2个DAC转换器,支持两路输出
+ 8位或者12位数字输入,12位需要设置数据对齐方向(左对齐或右对齐)
+ 允许同步更新
+ 生成噪声或者三角波
+ 双DAC同时或者分别转换
+ 每个通道有DMA功能
+ 外部触发转换
+ 输入参考电压

简单介绍:

DAC整体框图

在这里插入图片描述

名称 符号 注释
模拟电源,输入 VDDA 模拟电源正极
模拟电源地,输入 VSSA 模拟电源地
正参考电压,输入 VREF+ 正参考电压:2.4V - VDDA(3.3V)
模拟电压输出,输出 DAC_OUTX X通道模拟输出
外部中断线9 EXTI_9 外部中断触发
定时器中断 TIMX_TRGO 定时器中断触发
软件触发 SWTRGX 通过软件置1
数据保持寄存器 DHRX 存储转换数据
数据输出寄存器 DORX DHRX 自动或者触发后传入该寄存器
控制寄存器 DAC_CRX 控制DAC转换状态,TSEL等均属于本寄存器

DAC数据格式

Stm32 支持8位和12位转换
在这里插入图片描述
DAC输出电压=VREF*(DOR/2m) m为8,12

触发方式

触发方式有定时器触发、外部事件触发和软件触发

其中软件触发和无触发时,数据从DHR->DOR仅需1个APB时钟,其他方式均需3个APB时钟

软件触发会自动清零,只需关心何时置‘1’

噪声

在这里插入图片描述

三角波

在这里插入图片描述

设置WAVEx[1:0]位为’10’选择DAC的三角波生成功能。设置DAC_CR寄存器的MAMPx[3:0]位来选择三角波的幅度。内部的三角波计数器每次触发事件之后3个APB1时钟周期后累加1。计数器的值与DAC_DHRx寄存器的数值相加并丢弃溢出位后写入DAC_DORx寄存器。在传入DAC_DORx寄存器的数值小于MAMP[3:0]位定义的最大幅度时,三角波计数器逐步累加。一旦达到设置的最大幅度,则计数器开始递减,达到0后再开始累加,周而复始。 将WAVEx[1:0]位置’0’可以复位三角波的生成。

可知:频率需要MAMP、TIM共同改变。

单通道函数配置

函数配置流程图

NoMode
DMA
TIM
EXTI
Software
  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值