当我们电路需要DAC而单片机并没有DAC外设时,则可采用PWM通过RC低通滤波器来模拟实现DAC功能。
RC低通滤波器
当采用低通滤波器模拟DAC时,PWM频率应远大于RC低通滤波电路的截止频率fc=1/2πRC(10倍以上)。输出电压为Vout=Vcc*Duty。
在使用此电路时,应注意:
1、一般情况下,当电容C较小,电阻R较大时,输出电压损耗较小,纹波较大;当电容C较大,电阻R较小时,输出电压损耗较大,纹波较小。所以,为了获取线性度较高的精确DA转换,一般采用较小电容并尽量不要使用电解电容。
2、为了提高输出的驱动能力,一般会在RC低通滤波器器之后还会加一级高性能的电压跟随,并在跟随器输出的地方加上一个滤波用的电解电容,使输出电压进一步变得光滑。但是需要注意的是,这时的输出电压里可能含有较多的交流 谐波成分,如果处理不当,电压跟随器有可能自激。解决的办法就是使用一个小的去藕电容。而且这里电容的放置顺序必须是电解电容在前,去藕电容在后!
RC低通滤波器+电压跟随器
3、如果输出电压精度和线性度要求不高,但是对纹波要求却很高,或者这个电压比较固定时,可以使用电容较大的滤波组合。因为,虽然大电容的直流损耗较大,但是我们可以通过调节PWM占空比来达到要求的输出电压,或者通过一级AD转换的反馈来实现精确的固定电压输出。只是这里仍然要加一级电压跟随器,以便于后级采集电路使用,且AD采集点放置在跟随器输出处。
4、如果一级RC低通滤波器达不到效果,则可使用多级RC低通滤波器进一步提高输出平滑度。
二级RC低通滤波器