F280049C Programmable Gain Amplifier PGA

PGA

可编程增益放大器(PGA)用于放大输入电压,以增加下游ADC和CMPSS模块的动态范围。

14.1 Introduction简介

集成的PGA有助于降低成本和设计工作量,用于传统上需要外部独立放大器的许多控制应用。片上集成确保PGA与下游ADC和CMPSS模块兼容。软件可选择的增益和滤波器设置使PGA能够适应各种性能需求。

14.1.1 Features特性

PGA模块的可用功能包括:

  • 四种可编程增益模式:3倍,6倍,12倍,24倍
  • 内部由VDDA和VSSA供电
  • 基于硬件的微调以减少偏移和增益误差
  • 支持使用PGA_GND引脚的开尔文接地连接
  • RC滤波用嵌入式串联电阻器

14.1.2 Block Diagram结构框图

PGA中的有源元件是一个嵌入式运算放大器(op-amp),它被配置为具有内部反馈电阻的非反相放大器。这些内部反馈电阻值被配对以产生软件可选择的电压增益。

器件引脚上有三个PGA信号:

  • PGA_IN是PGA运算放大器的正输入。施加到该引脚的信号将被PGA放大。
  • PGA_GND是PGA_IN信号的开尔文接地参考。理想情况下,PGA_GND参考等于VSSA,但是PGA可以容忍来自VSSA的小电压偏移。有关更多信息,请参阅设备数据手册。
  • PGA_OF支持带RC组件的运算放大器输出滤波。滤波后的信号可用于内部ADC和CMPSS模块的采样和监测。
  • PGA_OUT是运算放大器输出端的内部信号。它可用于内部ADC和CMPSS模块的采样和监测。
    在这里插入图片描述

14.2 Linear Output Range线性输出范围

PGA的绝对输出范围受模拟VDDA和VSSA电源的限制——PGA不能产生大于VDDA或小于VSSA的输出电压。

尽管PGA可以在VSSA到VDDA的绝对电压范围内产生满量程输出,但放大器输出仅在绝对范围的子集内是线性的。这个减小的范围被称为线性输出范围。

设备数据手册中的PGA性能规范仅适用于线性输出范围。为了获得最佳性能,输入信号的调节方式应使PGA在正常系统操作期间保持在线性输出范围内。

但每个线性放大区域会随着PGA增益的改变而改变,因而需要查阅芯片手册以获得PGA的最佳性能。

14.3 Gain Mode放大模式

3x、6x、12x和24x的增益模式可使用PGACTL[Gain]寄存器字段进行软件选择。PGA的增益由电阻器ROUT和RGND之间的预设比率确定:
G a i n = 1 + R o u t R G N D Gain=1+\frac{R_{out}}{R_{GND}} Gain=1+RGNDRout
在这里插入图片描述
允许在正常操作期间改变增益模式,但在这样做时可以观察到最小调节时间以进入稳定状态。有关增益开关稳定时间,请参阅设备数据手册。

14.4 External Filtering外部滤波

PGA输出可以通过嵌入式串联电阻器路由到引脚,以对放大信号进行低通滤波。滤波器电阻可使用PGACTL[FILTRRESSEL]寄存器字段进行软件选择。默认选择PGACTL[FILTRESEL]=0将禁用过滤器路径。

可以使用标准低通RC方程来估计截止频率:
f = 1 2 π R C {f=\frac{1}{2\pi RC}} f=2πRC1

14.7 Enabling and Disabling the PGA Clock时钟使能禁止

如果在PGA输出电压时禁用PGA的时钟,则输出电压不受影响,但PGA寄存器将不再通过寄存器写入进行更新。启用时钟将恢复寄存器写入。

14.10 Analog Front End Integration模拟前端

PGA与其他嵌入式模拟模块(ADC、CMPSS、缓冲DAC)一起作为模拟前端系统运行。

14.10.1 ADC

在最简单的应用中,PGA放大小的输入信号以增加ADC的动态范围。PGA还提供了缓冲来自ADC采样和保持电容器的输入信号的额外好处,这进一步减少了采样误差。

滤波和未滤波PGA输出路径均可用于ADC采样。采样PGA路径时,建议使用最小ADC采集窗口。

14.10.1.1 Unfiltered Acquisition Window未滤波采样窗口

设备数据手册提供了用一个ADC采样PGA_OUT信号的最小估计ADC采集窗口。该估计值应提供接近ADC的指定性能参数的采样精度。为了获得更好的性能,可以使用更长的采集窗口。

14.10.1.2 Filtered Acquisition Window滤波采样窗口

用一个ADC采样PGA_OF滤波信号的最小ADC采集窗口根据RFILTER和CFILTER的值而变化。为了确保良好的性能,请选择足够大的CFILTER电容器,以满足大多数ADC采样和保持电容器(Ch)充电要求。CFILTER值可以根据ADC采样误差的可接受量(LSBErr)来确定大小:
C F I L T E R = C h × 4096 / L S B E r r C_{FILTER}=C_{h}\times 4096 / LSB_{Err} CFILTER=Ch×4096/LSBErr

14.10.2 CMPSS

对于高于或低于参考电压的跳闸,可通过CMPSS模块监测PGA输出。每个CMPSS最多可使用两个独立的参考阈值进行跳闸检测。
滤波和未滤波PGA输出路径均可用于CMPSS跳闸监测。

14.10.3 Buffered DAC

作为最佳实践,调节PGA输入信号,使得PGA输出在线性范围内居中。输入信号需要偏移和衰减的某种组合来实现这一目标。在这里插入图片描述
例如,外部电阻分压器可以衰减输入信号,而嵌入式缓冲DAC可以提供正电压偏移

总结

PGA模块可以作为ADC、CMPSS与外部模拟信号之间的桥梁。当外部模拟信号幅值过小,PGA可以将放大后甚至滤波后再经由ADC,CMPSS信号处理。

代码配置driverlib

#define myPGA0_BASE PGA1_BASE

void myPGA0_init()
{
    PGA_setGain(myPGA0_BASE, PGA_GAIN_3);
    PGA_setFilterResistor(myPGA0_BASE, PGA_LOW_PASS_FILTER_RESISTOR_200_OHM);
    PGA_enable(myPGA0_BASE);
    //
    // Delay for PGA to power up.
    //
    DEVICE_DELAY_US(500);
}

代码配置bit-field

void myPGA1_init()
{
    // configure PGA gain mode
    Pga1Regs.PGACTL.bit.GAIN = 0;
    // configure PGA filter resistor
    Pga1Regs.PGACTL.bit.FILTRESSEL = 1;
    // enable PGA module
    Pga1Regs.PGACTL.bit.PGAEN = 1;
    // wait PGA to power up
    DELAY_US(500);
}

管脚连接

PGA模块的关键引脚有三个

  • PGA_IN
  • PGA_OUT
  • PGA_OF

他们与其他模拟引脚的连接关系如下图所示
在这里插入图片描述
具体可详见芯片手册的第十二章,Analog Subsystem。
PGA_OF和PGA_OUT都是与ADC,CMPSS直接连在一起的。即在芯片内部已经是已经练好了的,而PGA_IN则悬空状态,具体的连接方式自行设计。

举个例子,在TI的LaunchPad-280049C上的设计如下在这里插入图片描述
把外部感兴趣的信号加在ADCINA3上,查询引脚连接表在这里插入图片描述
可知PGA2的输出是连接在A12和B9上的,因此采样A12和B9就是原始信号经PGA放大后的信号了。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

今天美美吃饭啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值