ZHCACA9 February   2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1305 , MSPM0L1306 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346

 

  1.   1
  2.   修订历史记录

设计说明

该子系统演示了如何将 MSPM0 内部运算放大器设置为跨阻放大器 (TIA) 配置并使用内部 ADC 读取输出。跨阻运算放大器电路可以将输入电流源转换为输出电压。电流到电压的增益基于反馈电阻。下载该示例的代码。

图 1 显示了该子系统的功能图。

GUID-20230131-SS0I-XCRP-MJXP-ST4FJKV17HN5-low.svg图 1 子系统功能方框图

所需外设

该应用需要一个集成的 OPA 和 ADC。

表 1 所需外设
子块功能 外设使用 说明

TIA(电流到电压转换)

(1 个)OPA

在代码中称为“TIA_INST”

模拟信号捕获

(1 个)ADC12

在代码中称为“ADC12_0_INST”

兼容器件

根据表 1 中的要求,该示例与表 2 中的器件兼容。相应的 EVM 可用于原型设计。

表 2 兼容器件
兼容器件 EVM
MSPM0L13xx LP-MSPM0L1306
MSPM0G35xx、MSPM0G15xx LP-MSPM0G3507

设计步骤

  1. 计算增益电阻 RF
    Equation1. R F =   V R e f _ A D C   -   V M i n I 1 M a x

    其中

    • VRef_ADC 是为 ADC 外设选择的基准

    • VMin 是运算放大器的最小输出电压

    • I1Max 是输入电流源的最大电流

  2. 计算满足电路带宽要求的反馈电容器。
    Equation2. C F     1 2   ×   π   ×   R F   ×   f p

    其中 fp 是输入电流源的最大频率。

  3. 计算使电路保持稳定所必需的运算放大器增益带宽 (GBW)。
    Equation3. G B W   >   C i   +   C F 2   ×   π   ×   R F   ×   C F 2

    其中 C i   =   C s   +   C d   +   C c m 假设:

    • CS:输入源电容
    • Cd:放大器的差分输入电容。对于 MSPM0 器件,这通常可估算为 3pF。
    • Ccm:反相输入的共模输入电容

  4. 通过将下限与步骤 3 中的计算值进行比较,确定可以使用的 OPA GBW 设置。
  5. 在 SysConfig 中设置 OPA,以实现电路的外部连接。
  6. 在 SysConfig 中设置 ADC,以实现与所选 OPA 输出的内部连接。
  7. 将 SysConfig 中的 ADC 采样时间设置为器件数据表中给出的 tSample_PGA 的最小值。

设计注意事项

  1. OPA 电源是 MSPM0 的 VCC。
  2. OPA GBW 设置:OPA 的较低 GBW 设置消耗的电流较小,但响应速度较慢。相反,较高的 GBW 消耗的电流较大,但压摆率较大,使能和稳定时间较短。模式间的规格差异请见器件特定数据表。
  3. OPA 同相输入:如果电流源未激活(例如当光电二极管处于无光状态时),则可以为 OPA 同相输入提供一个较小的偏置电压(而不是 GND 电位),以防止输出在 GND 上达到饱和。这可通过外部电压输入或通过内部外设(例如 COMP 外设内的 DAC12 或 DAC8)来实现。在后一种情况下,与 OPA 同相输入关联的引脚可用于其他目的。
  4. ADC 采样:该示例持续对 OPA 输出进行采样。如果不需要这样,可以使用计时器设置固定的采样间隔。
  5. ADC 结果:该示例仅存储全局变量 gADCResult 中捕获的最新结果。对数据执行操作之前,完整应用可以在一个数组中存储多个读数。
  6. ADC 基准选择:MSPM0 器件可以从内部基准发生器 (VREF)、外部源或 MCU VCC 向 ADC 提供基准电压。有关适用于所选器件的选项,请参阅器件特定数据表。所选基准电压设置了 ADC 可以采样的满量程范围,并且必须适应最大 OPA 输出电压。
  7. gCheckADC 上的竞态条件:该应用会尽快清除 gCheckADC。如果应用等待清除 gCheckADC 的时间过长,则可能会无意中丢失新数据。

软件流程图

图 2 显示了该示例的代码流程图,并说明了 ADC 如何对 OPA 输出进行采样。

GUID-20230131-SS0I-7Z4Q-WSDR-KM1WQBQWQ1KH-low.svg图 2 应用软件流程图

器件配置

该应用利用 TI 系统配置工具 (SysConfig) 图形界面为 OPA 和 ADC 生成配置代码。使用图形界面配置器件外设可简化应用原型设计过程。

应用代码

可以在 TIA_Example.c 文件的 main() 的开头找到图 2 中所述内容的代码。以下代码片段显示了获取测量电流源的 ADC 结果后,在何处添加自定义代码以执行有用的操作。由用户决定要采取的行动,并将 ADC 结果与电流源活动相关联。例如,一项设计如果连接到光电二极管,可能会对 ADC 结果求平均值以忽略光的微小波动,并执行增量计算以检测光的大幅变化。

while (1) {
    DL_ADC12_startConversion(ADC12_0_INST);
    while (false == gCheckADC) {
            __WFE(); 
    } 
    /* * This is where the ADC result is grabbed from ADC memory. 
    * A user may want to modify this to place multiple results into an array, 
    * or add code to perform additional calculations or filters to data obtained. 
    */
    gADCResult = DL_ADC12_getMemResult(ADC12_0_INST, DL_ADC12_MEM_IDX_0);
    gCheckADC = false;
    DL_ADC12_enableConversions(ADC12_0_INST); 
}