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

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

3天内不再提示

一个简单的PWM DAC设计方案详解

电子设计 来源:电子元件技术 作者:Dusan Ponikvar 2021-03-26 14:49 次阅读

当你需要从一个不带数模转换器(DAC)的微控制器输出模拟信号时,你可以外加一个DAC芯片。但是你也可以用另一种更经济的方法,即采用脉宽调制(PWM)输出加低通滤波器(LPF)取其平均值的方法,该平均值等于PWM信号的占空比。

图1:用RC低通滤波器得到PWM信号的平均值

RC低通滤波器滤除掉非直流信号,得到的便是平均信号UOUT。如果PWM信号的周期T为63个时钟周期,UOUT将会是64个离散DC值之一。(0 到 63,6位分辨率。)

RC低通滤波器的时间常数τ必须足够大以平滑输出信号UOUT,纹波?UOUT应小于一个最低有效位(LSB)。最坏的情况出现在50% 占空比时(如图2所示)。当τ远大于周期T时,电容的充电电流IC 和变化?UOUT可近似为:

对于一个6位的DAC,UOUT应小于 VCC/64,要求滤波器的τ=RC ≥ 16·T。

图2:滤波输出(蓝色)的纹波应小于一个LSB

一些实用数据:低功耗微处理器常使用一个32768Hz晶体振荡器作为PWM模块的时钟信号。如果是6位PWM,则周期T为64/32768≈2ms,因此需要32ms的时间常数,也就是要等待5τ(160ms)来使6位转换器稳定。非常慢。本设计实例将展现你如何才能加速完成信号的转换。

微控制器中的PWM模块通常可以产生多个PWM信号。我们来考虑一下将两个基于PWM的3位DAC(DACH和DACL)的输出求和,求和前DACL输出的幅度被减小到了八分之一。得到的信号相当于一个6位DAC,但将会比简单版本有重大的优势:周期T对于相同的分辨率仅为8个时钟周期,而所需的时间常数τ是原来的八分之一,DAC的稳定时间快了8倍。这样改进后就很容易用电阻为两个PWM信号(PWMH、PWML)实现RC滤波器:

o4YBAGBdgyGAQ87XAAFcZq5Y_Lc521.png

图3:将两个基于PWM的DAC输出合到一起

输出信号UOUT等于:

pIYBAGBdgy-Ab46JAAB3HJAkHno719.png

这一技术已经在TI MSP430F5132微控制器中实现:

图4:基于6位(3+3)PWM的DAC的初始化和写入代码

图5:基于6位PWM的DAC测量输出;蓝线:图1方案(稳定时间160ms);紫线:图3方案(稳定时间20ms)。

7位DAC可以用1%精度的电阻实现。这次,两个PWM信号用来产生两个3位DAC,最终实现6位的效果,MSb只用P3.7引脚来设置为0或1。

pIYBAGBdg22AZbaWAADomv_l0k0394.png

图6:基于7位PWM的DAC的实现

图7:图6电路的测量输出结果;注意其优秀的线性度

图8:基于7位(3+3+1)PWM的DAC的初始化和写入代码

这里的速度提升更加明显。一个简单的PWM DAC需要128个时钟周期(128/32768 s-1=3.9ms),因此τ=32·T=125ms,稳定时间为5·125ms=625ms。图7的稳定时间为40ms,快了16倍。使用高阶的LPF滤波器也有助于缩短稳定时间。
编辑:hfy

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

    关注

    114

    文章

    5124

    浏览量

    213276
  • 低通滤波器
    +关注

    关注

    14

    文章

    471

    浏览量

    47302
  • 脉宽调制
    +关注

    关注

    3

    文章

    215

    浏览量

    38274
  • 数模转换器
    +关注

    关注

    14

    文章

    979

    浏览量

    83066
收藏 人收藏

    评论

    相关推荐

    智慧公交是什么?文带你详解智慧公交的解决方案

    智慧公交是什么?文带你详解智慧公交的解决方案
    的头像 发表于 11-05 12:26 142次阅读
    智慧公交是什么?<b class='flag-5'>一</b>文带你<b class='flag-5'>详解</b>智慧公交的解决<b class='flag-5'>方案</b>!

    用于现场发送器的高性能16位PWM 4-20 MA DAC

    电子发烧友网站提供《用于现场发送器的高性能16位PWM 4-20 MA DAC.pdf》资料免费下载
    发表于 09-26 10:52 0次下载
    用于现场发送器的高性能16位<b class='flag-5'>PWM</b> 4-20 MA <b class='flag-5'>DAC</b>

    技术分享:国产工业级HMI芯片Model系列PWM-DAC实现指南

    在Model系列HMI芯片应用中,很多小伙伴对PWM调试方面存在些问题,因此,本期我们将深入探讨PWM-DAC原理及实现方法,希望通过本期内容带给大家些启发。
    的头像 发表于 09-20 17:42 413次阅读
    技术分享:国产工业级HMI芯片Model系列<b class='flag-5'>PWM-DAC</b>实现指南

    使用MSP430高分辨率定时器的PWM DAC

    电子发烧友网站提供《使用MSP430高分辨率定时器的PWM DAC.pdf》资料免费下载
    发表于 09-20 10:53 0次下载
    使用MSP430高分辨率定时器的<b class='flag-5'>PWM</b> <b class='flag-5'>DAC</b>

    在低成本MSP430 MCU上使用PWM实现数字DAC应用说明

    电子发烧友网站提供《在低成本MSP430 MCU上使用PWM实现数字DAC应用说明.pdf》资料免费下载
    发表于 09-13 09:56 0次下载
    在低成本MSP430 MCU上使用<b class='flag-5'>PWM</b>实现数字<b class='flag-5'>DAC</b>应用说明

    电磁频谱管理系统设计方案

    智慧华盛恒辉电磁频谱管理系统设计方案综合性的项目,旨在有效地管理和利用电磁频谱资源,确保各种无线通信服务的顺畅进行,并避免频谱资源的冲突和浪费。以下是
    的头像 发表于 07-15 16:40 407次阅读

    UPS系统设计方案解读

    UPS的应用场景日趋多样化,每个场景都有其独特的需求,对应不同的方案。UPS系统方案指南继续上新,本文将聚焦UPS设计方案展开讲述。
    的头像 发表于 06-26 10:06 684次阅读
    UPS系统<b class='flag-5'>设计方案</b>解读

    简单介绍下PWM原理与设计

    能够看到,当正弦波信号经过比较器出来以后,就成为了方波信号(PWM信号)。从广义的角度上来说,P
    发表于 02-15 10:41 497次阅读
    <b class='flag-5'>简单</b>介绍下<b class='flag-5'>PWM</b>原理与设计

    在NuEdu,pwm_dac示例程序中,让pwm来供电,为什么pwm产生的是输出假象的电压?

    在NuEdu,pwm_dac示例程序中,是让pwm来供电,用adc来量取电压值。能够得到很均衡的数字。 这里我有小问题,pwm产生的电压不是实实在在电压,是通过快速开关,来输出假象
    发表于 01-17 07:44

    通道如何捕获PWM的频率和占空比?

    ,前言正常情况是双通道捕获PWM波,这种方法简单且准确,但是它占用的资源太多了,因为它使用定时器的两通道,且这两通道映射在
    的头像 发表于 12-30 08:00 2636次阅读
    <b class='flag-5'>一</b><b class='flag-5'>个</b>通道如何捕获<b class='flag-5'>PWM</b>的频率和占空比?

    DAC接口基本原理详解

    电压 越来越多的人简单地将DAC视作具有数字输入和模拟输出的器件。但模拟输出取决于 是否存在称为基准电压源的模拟输入,且基准电压源的精度几乎始终是
    发表于 12-19 07:29

    WTN6系列语音芯片:PWMDAC音频输出在PCB设计中的优势

    ,使得工程师在PCB设计时能够更加灵活、高效地完成工作。本文将详细探讨WTN6系列语音芯片的这特性在PCB设计中的优势。PWMDAC音频输出方式简介1.
    的头像 发表于 12-18 08:46 589次阅读
    WTN6系列语音芯片:<b class='flag-5'>PWM</b>与<b class='flag-5'>DAC</b>音频输出在PCB设计中的优势

    看似简单的整流二极管电路详解

    看似简单的整流二极管电路详解
    的头像 发表于 12-04 16:18 876次阅读
    看似<b class='flag-5'>简单</b>的整流二极管电路<b class='flag-5'>详解</b>(<b class='flag-5'>一</b>)

    如何通过PWM一个呼吸灯

    接下来我们就来试试,通过PWMLED实现不同亮度的变化,也就是我们常见的呼吸灯了。 硬件接线 还是用这个LED灯,端连接电阻,再到
    的头像 发表于 11-27 11:40 830次阅读
    如何通过<b class='flag-5'>PWM</b>做<b class='flag-5'>一个</b>呼吸灯

    如何提高PWM-DAC的输出精度

      昨天发了篇TI的技术文章,里面提到了比较有意思的电路,就是用多路PWM并联来提高PWM-DAC的输出精度。比如组合两路8bit的
    的头像 发表于 11-18 16:30 2731次阅读
    如何提高<b class='flag-5'>PWM-DAC</b>的输出精度