0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CubeMX配置stm32的DAC

嵌入式应用开发 来源:嵌入式应用开发 作者:嵌入式应用开发 2023-06-12 09:18 次阅读

我们使用 STM32CubeMX 软件进行配置。DAC 的配置是相对很简单的,如下图所示:

poYBAGSEeeqAM64cAABnfG294Hk166.png

选择两个输出通道,其中 External Trigger 选项为是否选择 外部中断EXTI9 触发,如下图所示:

pYYBAGSEef6AGclHAAEFOg6UsBs367.png

DAC 的基本设置,很简单,对于博主使用的 STM32L151 来说就只有2个选项:

pYYBAGSEeh-AXhEkAAEBAaB8Ckk690.png

DAC选择了输出缓存,可以用来减少输出阻抗,无需外部运放即可直接驱动外部负载。但是输出的电压没法低于20mv。

不使能输出缓存,DAC可以输出低于20mv的信号

对于其他型号的 DAC ,可能还会有下面两个选项:

Wave generation mode

波形生成模式:可选三角波发生器 ( Triangle wave generation ) 和 噪声波形 ( noise wave generation )

Maximum Triangle Amplitude,最大三角波幅:0-4095 对应 0V~3.3V

1、触发源software trigger与None的区别
这里要额外说明一下,最后一个选项 software trigger (软件触发) 与 选择 None (没有触发源)的区别。

这两种触发源很多小伙伴在使用的时候会搞糊涂,实际上这两者是完全不同的,先用文字简单解释一下(简单使用 HAL 库,不了解寄存器没关系,这里只是为了说明区别,):选择 None (没有触发源):只在向 DAC 数据寄存器 DHR 写入数据之后,DAC 转化模块自动转换一次。选择 software trigger (软件触发):

向软件触发寄存器 SWTRIGR 中写入命令时触发转换,将 DOR 寄存器中的数据进行转换。 但是在这个之间需要向 DAC 数据寄存器 DHR 写入数据, 再进行软件触发操作。

可以说,software trigger (软件触发)就比 None (没有触发源) 多一个步骤,首先都要写 DHR 寄存器写入数据,写完后 None 自动转换,但是 software trigger 需要多一步软件触发操作。

在标准库中,使用步骤区别:如果模式为 DAC_Trigger_None :直接使用 DAC_SetChannelxData() 设置输出电压,就可以设定输出电压的大小

如果模式为软件触发:每次在使用 DAC_SetChannelxData() 设置或者修改输出电压后, 还需要调用 DAC_SoftwareTriggerCmd(),使能软件触发。

在 HAL 库中,没有单独的软件触发的代码,因为 HAL_DAC_Start() 函数中包含了软触发转换的代码。所以在 HAL 库中,建议的使用方法步骤为:初始化完成后,先使用 HAL_DAC_SetValue(); ,然后再使用 HAL_DAC_Start(); ,这样的先后顺序不管是使用上面的那种方式,都能够正常输出电压值。

在平时使用中需要谨慎使用,因为每一次修改输出电压后,都必须产生一次触发信号来使得 DAC 触发 。

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • dac
    dac
    +关注

    关注

    43

    文章

    2287

    浏览量

    190961
  • STM32
    +关注

    关注

    2270

    文章

    10890

    浏览量

    355633
  • 中断
    +关注

    关注

    5

    文章

    898

    浏览量

    41462
  • stm32cubemx
    +关注

    关注

    5

    文章

    283

    浏览量

    14788
  • CubeMx
    +关注

    关注

    0

    文章

    30

    浏览量

    1340
收藏 人收藏

    评论

    相关推荐

    STM32系列 DAC 的基本使用

    前言 一、STM32DAC 的系列 二、DAC 基础简介 2.1 DAC输出引脚 2.2 引脚配置 2.3
    的头像 发表于 09-11 15:21 2710次阅读
    <b class='flag-5'>STM32</b>系列 <b class='flag-5'>DAC</b> 的基本使用

    如何使用stm32Cubemx软件配置DAC电压输出和ADC电压检测

    stm32Cubemx实用篇(三):DAC电压输出和ADC电压检测本章将介绍使用stm32Cubemx软件配置DAC电压输出和ADC电压检测
    发表于 01-21 07:48

    STM32CubeMX软件工程描述_ USART配置过程

    STM32CubeMX软件工程描述_USART配置过程
    的头像 发表于 03-25 10:43 3350次阅读
    <b class='flag-5'>STM32CubeMX</b>软件工程描述_ USART<b class='flag-5'>配置</b>过程

    STM32CubeMX新建工程+ 基本IO配置过程

    STM32CubeMX新建工程+基本IO配置过程
    的头像 发表于 03-25 10:47 3869次阅读
    <b class='flag-5'>STM32CubeMX</b>新建工程+ 基本IO<b class='flag-5'>配置</b>过程

    STM32CubeMX+使用教程

    来源:STM32单片机 STM32CubeMX+使用教程 STM32CubeMX简介 STM32CubeMX 是 ST 意法半导体近几年来大力推荐的
    的头像 发表于 09-11 10:02 1.9w次阅读

    STM32CubeMX配置工具 轻松优化MCU配置参数

          使用意法半导体最新版的STM32CubeMX配置工具创建STM32 微控制器(MCU)项目,将会更直观,更高效。STM32CubeMX v.5.0的最新设计的多面板GUI界
    发表于 11-05 16:21 21次下载
    <b class='flag-5'>STM32CubeMX</b><b class='flag-5'>配置</b>工具 轻松优化MCU<b class='flag-5'>配置</b>参数

    STM32CUBEMX配置教程(十三)STM32的定时器触发的固定频率DAC输出(使用DMA)

    STM32CUBEMX配置教程(十三)STM32的定时器触发的固定频率DAC输出(使用DMA)
    发表于 11-24 14:06 46次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>配置</b>教程(十三)<b class='flag-5'>STM32</b>的定时器触发的固定频率<b class='flag-5'>DAC</b>输出(使用DMA)

    STM32F407的串口UART 基础配置STM32CubeMX

    STM32F407的串口UART 基础配置STM32CubeMX
    发表于 11-29 16:06 55次下载
    <b class='flag-5'>STM32</b>F407的串口UART 基础<b class='flag-5'>配置</b><b class='flag-5'>STM32CubeMX</b>

    STM32CUBEMX配置教程(一)基础配置

    STM32CUBEMX配置教程合集(一)
    发表于 12-14 18:41 17次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>配置</b>教程(一)基础<b class='flag-5'>配置</b>

    STM32CUBEMX配置教程(二)时钟等内部参数配置

    STM32CUBEMX配置教程(二)时钟等参数配置基于STM32H743VI使用STM32CUBEMX两年了,始终觉得这个工具非常的方便,但
    发表于 12-14 18:42 24次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>配置</b>教程(二)时钟等内部参数<b class='flag-5'>配置</b>

    STM32CubeMX学习笔记——STM32H743_DAC

    STM32CubeMX学习笔记——STM32H743_DACGithubSTM32CubeMX配置Pinout配置&DACADCClock Configuration
    发表于 12-27 18:40 17次下载
    <b class='flag-5'>STM32CubeMX</b>学习笔记——<b class='flag-5'>STM32H743_DAC</b>

    2.使用cubemx配置stm32(二)__核心配置

    文章目录使用cubemx配置stm32(二)__核心配置cubemx工程搭建实现单片机点灯程序CubeM
    发表于 12-27 18:48 0次下载
    2.使用<b class='flag-5'>cubemx</b><b class='flag-5'>配置</b><b class='flag-5'>stm32</b>(二)__核心<b class='flag-5'>配置</b>

    第一章 stm32 cubemx基础配置实验以及proteus 8的使用

    第一章 stm32 cubemx基础配置实验以及proteus 8的使用文章目录第一章 stm32 cubemx基础
    发表于 12-27 18:55 11次下载
    第一章 <b class='flag-5'>stm32</b> <b class='flag-5'>cubemx</b>基础<b class='flag-5'>配置</b>实验以及proteus 8的使用

    STM32 HAL库 CUBEMX配置 ADC采集

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录STM32 HAL库 CUBEMX配置 ADC采集软硬件型号1.单通道不定时任意时刻采集信号CUBEMX
    发表于 12-27 18:57 25次下载
    <b class='flag-5'>STM32</b> HAL库 <b class='flag-5'>CUBEMX</b><b class='flag-5'>配置</b> ADC采集

    STM32CubeMX配置和C代码的生成

    电子发烧友网站提供《STM32CubeMX配置和C代码的生成.pdf》资料免费下载
    发表于 09-20 09:53 8次下载
    <b class='flag-5'>STM32CubeMX</b>的<b class='flag-5'>配置</b>和C代码的生成