ZHCADY8 April 2024 TMS320F28P550SG , TMS320F28P550SJ , TMS320F28P559SG-Q1 , TMS320F28P559SJ-Q1
C2000 实时微控制器中嵌入式 ADC 的输入电压范围限制为 3.3V。这对于许多应用而言是足够的。但是,有些应用,例如使用传统工业或汽车传感器的应用,可能需要更高的 ADC 输入范围,例如 5V 或 12V。根据应用的不同,还可能存在其他设计限制,例如输入源无法驱动 SAR ADC 的采样电容器。另一个设计问题可能是整个信号链的噪声性能。
为了将 5V 或任何其他更高的电压信号衰减至 3.3V,最简单且成本最低的方法是通过电阻分压器网络。假设模拟传感器提供 0V 至 12V 范围的信号。如图 2-1 所示,用户可以使用带有 36kΩ 和 100kΩ 电阻器的分压器来将 12V 传感器电压降至 3.3V 以下的水平。然而,选择一个足够长的采样保持持续时间来使这个电路实现可接受的稳定性能会比较困难。该问题需要使用单位增益运算放大器。
为了解决从高阻抗源驱动 SAR ADC 的问题,2 类 PGA 中实现了缓冲模式。具有低输出阻抗的单位增益运算放大器可以驱动电阻分压器,并提供与电阻分压器和采样电容器的隔离。此外,当传感器具有高输出阻抗并直接连接到 ADC 进行采集时,缓冲模式也很有用,因为高阻抗信号可能导致得到的转换结果不准确。用户还可以使用滤波电阻器 (100Ω) 和电容器 (1nF) 来构成截止频率为 1.5MHz 的低通滤波器。
请注意,当 PGA 模块配置为缓冲模式时,微控制器的指定反相引脚 (PGA_INM) 可以自由用作通用 I/O。此外,1 类 PGA 模块不支持缓冲模式。
有关 SAR ADC 驱动电路的更多信息,请参阅电荷共享驱动电路 应用手册,该应用手册提供了关于如何选择源电阻器和电荷共享电容器来驱动 ADC 的优秀教程。
以下代码片段显示了在何处添加自定义代码来设置 M、N 和 P-MUX 的值以实现缓冲模式运行,以及选择内部连接到 PGA 模块输出端的适当滤波电阻器 RFILT。
//
// Filter Resistor
//
#define PGA_FILTERVALUE PGA_LOW_PASS_FILTER_RESISTOR_100_OHM
//
// P-MUX selection
//
#define PGA_PMUXINPUT PGA_PMUX_POS
//
// N-MUX selection
//
#define PGA_NMUXINPUT PGA_NMUX_RTOP
//
// M-MUX selection
//
#define PGA_MMUXINPUT PGA_MMUX_NAKED_OPAMP在代码片段中,PGA_FILTERVALUE 表示滤波电阻器 RFILT 所需的值。请确保查阅特定器件的文档或参考手册,找到可用的 RFILT 值,然后将 PGA_FILTERVALUE 替换为要在电路中使用的实际值。
在一些应用中,放大器的输出端不能存在 RC 网络。流过滤波电阻器的放大器输出电流会产生失调电压,从而引入输出误差。在这种情况下,用户可以通过在反馈环路中放置一个反馈电容器来过滤噪声尖峰。该电容器可以补偿 PGA 模块的反馈网络和输入电容所产生的零点。实际上,在内部增益模式下,通过在 PGA_INM 和 PGA_OUT 之间放置一个外部电容器,可以实现一个简单的单极低通滤波器,如图 2-2 所示。要启用此滤波器,请将 PGA_FB_ON_PIN 寄存器设置为 1。
此类滤波器的截止频率可以通过方程式 1 计算。