ZHDU154 July   2026 TMS320F28P550SJ , TMS320F28P650DK

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2库声明
  6. 3库架构
    1. 3.1 后台处理
    2. 3.2 前台处理
    3. 3.3 数据传输机制
  7. 4计量计算
  8. 5配置和数据结构
  9. 6校准模块
  10. 7用户特定的配置
    1. 7.1 DEBUG 模式
      1. 7.1.1 调试模式的函数
      2. 7.1.2 如何配置 DEBUG 模式参数
    2. 7.2 ADC 模式
      1. 7.2.1 使用片上 ADC
      2. 7.2.2 两点校准
        1. 7.2.2.1 步骤 1 — 偏移校准(零输入点)
        2. 7.2.2.2 步骤 2 — 增益校准(满量程点)
      3. 7.2.3 使用外部 ADC
    3. 7.3 模式切换
    4. 7.4 THD 算法选择
      1. 7.4.1 方法 1 — 基于 PLL(未定义 HARMONICS_SUPPORT 宏时的默认值)
      2. 7.4.2 方法 2 — Goertzel DFT(HARMONICS_SUPPORT 和 USE_GOERTZEL_THD 宏均已定义时)
      3. 7.4.3 方法 3 — 2048 点实数 FFT(已定义 HARMONICS_SUPPORT 宏但未定义 USE_GOERTZEL_THD 宏时)
    5. 7.5 拓扑选择
    6. 7.6 启用功能
    7. 7.7 系统参数
    8. 7.8 每相位比例因子
  11. 8运行示例
    1. 8.1 访问每个相位的参数
    2. 8.2 访问系统总测量值
    3. 8.3 访问相位状态标志

步骤 1 — 偏移校准(零输入点)

交流信号未施加到 ADC 输入端:

  1. 调用 App_startDataCollection() 函数之前,在启动时调用一次 ADC_calibrateOffsets() 函数。
  2. 该函数对电压和电流通道上的 1000 个连续 ADC 读数求平均值,以得出直流中点:
    • ADC_calibrateOffsets(); // 在未连接交流输入时调用
  3. 该函数将测得的平均值存储在内部变量 g_voltageOffsetg_currentOffset 中。然后从 ADC_readNormalized() 函数的每个后续 ADC 读数中减去这些平均值。对于双极性信号中心位于 Vref/2 (1.65V) 的 12 位 ADC,其理论中点为 2048,但在实际应用中,元件容差会使该中点发生偏移。
  4. 如果未调用 ADC_calibrateOffsets() 函数,则使用 ADC_VOLTAGE_DC_OFFSETADC_CURRENT_DC_OFFSET 的默认值,如 adc_config.h 文件中所定义(两者均默认为 2048.0)。