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

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

3天内不再提示

STM32编程为何内部不应开DAC缓冲

贸泽电子设计圈 来源:互联网 作者:佚名 2017-11-06 08:54 次阅读

工业场合开发的设备通常情况下都会具有4-20mA输出接口,在以往没有DAC模块的单片机系统,需要外加一主片DAC实现模拟量的控制,或者采用PWM来摸拟DA,但也带来温漂和长期稳定性问题。在以STM32中心的设备中,使用它自带的DAC即可非常方便的实现4-20mA的输出接口,具有精度高、稳定性好、漂移小以及编程方便等特点。

在STM32单片机系统中,100脚以下没有外接出VREF引脚,但这样使得DAC的参考端和VCC共用,带来较大误码差,为解决这一问题,可以使用廉价的TL431来解决供电问题,TL431典型温漂为30ppm,所以在一般应用中已非常足够。选用两只低温漂电阻,调整输出使TL431的输出电压在3V-3.6V之间,它的并联稳压电流可达到30mA,正好能满足一般STM32核心的功耗需求。

利用TL431解决了供电问题,余下的就是4-20mA的转换电路,如下图:

上图即为非常精确的转换电路,OPA333是一颗非常优异的单电源轨至轨运算放大器,其工作电压为2.7-5.5V,其失调电压仅为10uV,实测最低输出为30uV,最高输出可达VCC-30uV。电路组成压控恒流源,其关键在于OPA333这颗芯片的优异性能,使得以上电路获得了极高的精度和稳定性。DACOUT来自于STM32的DAC1或者DAC2输出,由C25进行数字噪场滤波之后进入运算,进行1:1缓冲,后经过Q2进行电流放大,在R7上形成检测电压,C17进行去抖动处理。4-20mA信号由AN_OUT+/AN_OUT-之间输出。

上图中,负载中的电流在R7上形成压降,经运放反馈后得到Vdacout=Vr7=I*R7,所以:I=Vdacout/R7,当Vdacout在400mV到2000mV之间变化时,可得到4-20mA的输出。改变R7的大小,便可改变DACOUT的需求范围。电路中,R2的基射极之间将有0.7V左右的偏压,所以Vb[MAX]=2V+0.7V=2.7V,这正好在OPA333的输出范围之内。电路中R14做为输出端的限流电流,使得输出端的最大输出电流Imax=Vcc/(R7+R14),若Vcc取6V,则Imax=6V/200 O=30mA,若没有R14,则最大电流可能有60mA,这时R7上的耗散功率为0.06*0.06*100=0.36W,若选用0805贴片电阻,将导致R7烧坏,或者由于温度升高太严重导致R7阻值变化太大输出引起较大偏差。加入R14之后,R7上的最大耗散功率为:0.03*0.03*100=0.09W,此时在正常的范围之内。

电路中R14不可省去,C17不可省去,由于外负载可能的微小干扰或波动将导致OPA333组成的深度负反馈电路形成振荡,使输出电流波动,加入C17能抑制这种波动,使输出更稳定,但是C17的值不宜过大。

使用STM32编程应注意,其内部不应当开DAC缓冲,因以上电路已经为一个高输入阻抗的缓冲电路。由STM32内部缓冲电路将损失掉输出线性度。

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

    关注

    142

    文章

    12418

    浏览量

    210139
  • STM32
    +关注

    关注

    2240

    文章

    10675

    浏览量

    348945
  • opa333
    +关注

    关注

    0

    文章

    3

    浏览量

    3718

原文标题:STM32单片机之4-20mA输出电路

文章出处:【微信号:Mouser-Community,微信公众号:贸泽电子设计圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32F4内部DAC可以分时复用吗?

    请问,STM32F4内部DAC可以分时复用吗?
    发表于 03-28 08:38

    DAC中带缓冲和不带缓冲的区别是什么?

    一直保持在前面一个电压值? 现在的DAC是不是都具有锁存功能? DAC中带缓冲和不带缓冲的区别是什么? 不太懂,想请教一下。
    发表于 12-19 08:13

    STM32使用内部晶振还是外部晶振?

    STM32使用内部晶振还是外部晶振? 在设计和开发STM32应用时,有两种主要的时钟源选择可供选择:内部晶振和外部晶振。 内部晶振是集成在
    的头像 发表于 12-15 14:14 2973次阅读

    AD5681为何在power-down模式下DAC无输出?

    为何在power-down模式下DAC无输出?
    发表于 12-06 06:13

    学习STM32F103的DAC功能

    三勺最近在学习STM32F103的DAC功能,本文主要解释在配置DAC寄存器实现相应功能时遇到的一些问题。
    的头像 发表于 10-24 16:00 1060次阅读
    学习<b class='flag-5'>STM32</b>F103的<b class='flag-5'>DAC</b>功能

    STM32为何在诸多的单片机中脱颖而出?

    STM32为何在诸多的单片机中脱颖而出?
    的头像 发表于 10-19 18:05 295次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>为何</b>在诸多的单片机中脱颖而出?

    STM32进阶之串口环形缓冲区实现

    STM32进阶之串口环形缓冲区实现
    的头像 发表于 09-19 09:20 1669次阅读
    <b class='flag-5'>STM32</b>进阶之串口环形<b class='flag-5'>缓冲</b>区实现

    STM32F0 DAC介绍

    DAC,每个通道输出一个 8位或12位输出 12位数据格式下可配置左对齐、右对齐 同步更新 噪声波形和三角波形产生器 双通道可单独或同时转换 可产生DMA请求,并具有DMA下溢错误检测 外部事件触发转换 可配置的内部
    发表于 09-12 06:49

    STM32系列 DAC 的基本使用

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

    STM32L4数模转换模块(DAC)介绍

    触发器(定时器、外部引脚、SW触发器) •可编程输出缓冲器,可驱动更多电流 •DAC电源要求:VDDA=1.8 V至3.6 V •DAC输出范围:0 ≤
    发表于 09-11 07:58

    ch32和stm32编程有区别吗?

    ch32和stm32编程有区别吗? STM32是一个系列的单片机,其核心中央处理单元(CPU)使用ARM Cortex-M内核。因此,STM32编程
    的头像 发表于 08-16 11:15 930次阅读

    STM32数模转换器(DAC)简析

    STM32F4xx系列提供的DAC模块是12 位电压输出数模转换器。DAC可以按 8 位或 12 位模式进行配置,并且可与DMA控制器配合使用。
    发表于 07-22 16:43 2099次阅读
    <b class='flag-5'>STM32</b>数模转换器(<b class='flag-5'>DAC</b>)简析

    STM32 系列DAC的基本使用

    一、STM32DAC 的系列 目前博主产品使用的芯片为 STM32L051C8 系列,本来还想着直接CubeMX 设置一下,直接测试,才发现这个片片根本没有 DAC = =! 好
    的头像 发表于 06-22 10:48 1232次阅读
    <b class='flag-5'>STM32</b> 系列<b class='flag-5'>DAC</b>的基本使用

    CubeMX配置stm32DAC

    我们使用 STM32CubeMX 软件进行配置。DAC 的配置是相对很简单的,如下图所示。
    的头像 发表于 06-12 09:18 2001次阅读
    CubeMX配置<b class='flag-5'>stm32</b>的<b class='flag-5'>DAC</b>

    STM32 系列 DAC的介绍与使用

    本文我们就来好好复习下 STM32DAC ,从应用角度讲讲如何快速使用起来。
    的头像 发表于 05-29 09:59 3636次阅读
    <b class='flag-5'>STM32</b> 系列 <b class='flag-5'>DAC</b>的介绍与使用