我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1447|回复: 5

[技术文章] PWM + R2R DAC,这个组合用好了性能惊人!

[复制链接]
  • TA的每日心情

    昨天 18:16
  • 签到天数: 99 天

    [LV.6]常住居民II

    3万

    主题

    8253

    回帖

    8万

    积分

    三级逆天

    积分
    81480

    终身成就奖特殊贡献奖原创先锋奖金点子奖优秀斑竹奖宣传大使奖

    发表于 2017-11-28 10:26:16 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

    您需要 登录 才可以下载或查看,没有账号?立即注册

    ×

                                   
    登录/注册后可看大图






    将PWM与一个小型R-2R梯形DAC相结合,既可大大减小PWM纹波,又能增加DAC分辨率,从而提高两方面的性能。本设计实例利用一个8电阻阵列和3个输出引脚对R-2R梯形DAC进行修改重构,修改的目的是将底部2R连接到PWM输出而不是将其接地。
    将PWM和小型R-2R梯形DAC相结合可同时提高双方的性能,它能显著减小PWM纹波,还能提高数模转换器(DAC)的分辨率。
    本设计实例利用一个八电阻阵列和三个引脚,将底部的2R从连接到地改为连接到PWM输出,对R-2R梯形DAC进行了重构(图1)。

                                   
    登录/注册后可看大图

    图1:混合式PWM/R-2R DAC。
    在梯形结构中,VCC分为8段,每一级(0% PWM)到相邻更高级(100% PWM)的空隙由PWM填充。这种方法可以将纹波减小到1/8,同时分辨率也会增加额外3个高阶比特。或者你也可以从原始PWM占空比值的顶部拿走这3个比特,然后将其时钟速率乘以8。这样仍能实现8:1的纹波减小,但时钟速率的增加会将PWM噪声进一步压到滤波器的底部,得到更大的衰减。


    仿真

    我对这种混合方法进行了仿真。

                                   
    登录/注册后可看大图

    图2:比较/仿真电路。
    要与传统的简单低通滤波器(图2)进行比较,你应记得R-2R梯形结构的输出电阻是R,因为我建议将阵列中的两个电阻并联起来形成R(单个电阻是2R),一个10kΩ的阵列产生5kΩ的输出电阻。这就是我在传统方法中使用的电路,其中的1µF电容是相同的。我将PWM设为50%的占空比,因为这时会产生最差的纹波。仿真结果(图3)显示传统方法有约4mV的波纹,而第一种方法(在原8比特基础上增加3个新的比特)生成的纹波是493µV,相当于传统方法的1/8。第二种方法(将PWM时钟提高8倍,总比特数仍然是8)产生的纹波仅61µV,大约是原始纹波的1/65。

                                   
    登录/注册后可看大图

    图3:仿真结果。
    图4a(PWM+低通)和图4b(11位混合)是将电压从0V缓慢地一步步调到5V的复杂仿真结果。滤波器中的电容特意选用了很小的值,以便我们能看清这种情况下的纹波。在正常的R-2R梯形中增加一个阶梯状图形(图4b中的红色),以便显示PWM是如何从一级移动到下一级,甚至越过R-2R梯形顶部直到5V。

                                   
    登录/注册后可看大图

    图4:仿真得到的基本PWM DAC(图4a,上)和混合DAC(图4b,下)的纹波。
    用数字控制振荡器(NCO)技术代替PWM也一样可行。数控振荡器(增加一个值到累加器并输出进位)比PWM更有优势,因为它可以减小50%设置点附近的纹波(通过增加转换频率),这是简单PWM表现最差的地方。
    用任何其它的DAC也行得通:只需将PWM/NCO/任何信号连接到最低有效位。


    测试

    下面是一些测试结果:我本来打算使用容差是±2%的电阻阵列,±1%甚至±½%的电阻阵列也找得到,不过我手头没有,所以我就用单个精度为1%的电阻。我将运行于16MHz的ATmega328处理器的定时器timer1设定为给8位PWM使用,并使用10位ADC开展测量。由于PWM、R-2R和ADC参考的都是VCC,我们可以忽略这个因素,针对8级中的每一级只检查从ADC读取的值,PWM则设为0%和100%。理想情况下,第一步的100%输入对下一步应该没有任何影响。

                                   
    登录/注册后可看大图

    这些值看起来非常合理。然后我使用了一种技术,借助ATmega328的功能,使用与生成PWM相同的定时器来设定模数转换,我把这种技术称之为“Slow-scilloscope”。这样我们就可以测量给定PWM周期内的纹波。图5是带低通滤波器的传统PWM(绿色)和混合(黑色+红色)的合成图。这两种方案都使用了非常小的电容,以便能看清纹波。

                                   
    登录/注册后可看大图

    图5:测量得到的PWM和混合式DAC的纹波。
    图6显示了在每种混合设置下的非同步模数转换的曲线,允许结果中的纹波作出(或多或少)随机的变化。这次使用了一个较大的电容以便获得更加真实的结果。

                                   
    登录/注册后可看大图

    图6:测量得到的混合数模转换器纹波,电容为最终值。
    总之,我们已经看到,PWM可以填充R-2R DAC阶跃之间的空隙,R-2R梯形结构可以显著减小通常由PWM加上低通滤波器产生的纹波,或者两者兼有。
    回复

    使用道具 举报

    该用户从未签到

    55

    主题

    669

    回帖

    1547

    积分

    二级逆天

    积分
    1547

    终身成就奖

    QQ
    发表于 2018-2-26 09:44:10 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    6218

    回帖

    8731

    积分

    二级逆天

    积分
    8731

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    QQ
    发表于 2018-2-27 08:59:42 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-8-17 17:48
  • 签到天数: 1 天

    [LV.1]初来乍到

    1

    主题

    287

    回帖

    232

    积分

    二级逆天

    积分
    232

    终身成就奖

    QQ
    发表于 2018-6-15 16:33:54 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-11-7 10:22
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    44

    主题

    5766

    回帖

    1万

    积分

    三级逆天

    积分
    10061

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    QQ
    发表于 2018-6-16 09:03:10 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    12 小时前
  • 签到天数: 186 天

    [LV.7]常住居民III

    2

    主题

    8897

    回帖

    1万

    积分

    三级逆天

    积分
    10354

    社区居民终身成就奖特殊贡献奖原创先锋奖

    QQ
    发表于 2018-6-24 08:32:04 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    每日签到,有金币领取。


    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    ( 闽ICP备2024076463号-1 ) 论坛技术支持QQ群171867948 ,论坛问题,充值问题请联系QQ1308068381

    平平安安
    TOP
    快速回复 返回顶部 返回列表