STM32
直播中

陈超

7年用户 958经验值
私信 关注
[问答]

请问DAC如何才能输出正负电压?

请问DAC如何才能输出正负电压?

回帖(1)

萧持毅

2021-11-22 09:20:36
  案例要求

  


  • 使用stm32自带的DAC,输出电压范围是[0,3.3V],而后级模块需要[-1V,1V],受限于pcb尺寸,不能另外寻找合适的DAC,那么只能用stm32本身自带的DAC,可是它只能输出+电压,怎么办?

  设计思路

  我的思考过程如下:
  


  • 需要将[0,3.3V]偏移到[-1.65V,1.65V]才能满足要求。
  • 还需要一个负电源;
  • 电平偏移就是电压互相加减;
  • 我需要的是一个减法器,满足这样的公式:Vo = Vdac - Vdc。如果提供的Vdc=1.65V,那么输出Vo就可以达到[-1.65V,1.65V],实际上,最终的Vo只要能包括[-1V,1V]就满足要求了。

  电平偏移威廉希尔官方网站

  


  • 电平偏移的核心思路就是利用加法器或者减法器达到电平偏移的目的,大多数情况下放大器需要双电源供电。
  • 为了实现Vo = Vdac - Vdc,减法器的应用如下,其中“ 平移电压与增益无关”满足设计要求,其他可以用于其他应用。

  平移电压与增益无关

  
  

  

  


  • 图中的直流电压“Vdc”由电源芯片供电,也可以用虚线框中的电阻分压提供,此时的“Vdc”不是个恒定值,会被输入信号“V+”影响,如果想让放大器输出偏移到一个合理的范围需要仿真合适的“R5,R6”阻值,或者实际测试。
  • 公式推导。

      

      

    由(1)(2)式可得:

      

      

    如果R1=R2=R3=R4=R,可得:

  
  

  

  反向偏移

  
  

  

  


  • 平移用的“Vdc”由电阻分压得到。平移用的DC必须是低内阻,所以“C1”必不可少。
  • 输入信号“Vi”由放大器反向端输入。
  • 放大器双电源供电;
  • 公式推导:

      

      

    V + = Vdc
    令:R3 = R4
    推导得:

      


  • 可以看到直流电平“Vdc”被放大了2倍,“Vdc”的增益=2;
  • 为什么叫它是反向偏移:相对于“Vi”来说,Vi增大,Vo变小。Vo朝着Vi相反的方向变化。
      



  同向偏移

  
  

  

  


  • 信号直接由放大器正端输入;
  • 偏移用的DC电压由电源芯片直接供电“VCC”,也可以用电阻分压,从放大器负端输入;
  • 公式推导:

      


  • 令:R1 = R2
  • V+ = Vi
    可得:

      


  • 为什么叫它同向偏移:相对于输入“Vi”来说,Vi越大,Vo越大。Vo朝着Vi相同的方向变化。

  
  
举报

更多回帖

发帖
×
20
完善资料,
赚取积分