This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F2800157:TMS320F2800157

Guru**** 2463330 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1496328/tms320f2800157-tms320f2800157

器件型号:TMS320F2800157

工具/软件:

三相交错式降压转换器的 ADC SOC 触发和中断生成

我们正在设计混合动力 EV 电池充电器、以便通过80V 主牵引电池为12V 辅助电池充电。  

在该系统中、我们使用三相交错同步降压转换器、 每个相位彼此相差120度。 U 相 PWM 从 EPWM1模块施加、V 相通过 EPWM2施加、W 相通过 EPWM5施加。 为了捕获每个相位的平均电流、我们需要在每个电感器电流的中点触发 ADC、该电流与相应 PWM 计数器的过零或周期匹配同步。 使用 ADCC 模块测量三相电流。 用于输入电压、输出电压和散热器温度反馈的 ADCA 模块。 我们按如下方式触发 ADCC  

  • 在发生计数器零事件时 EPWM1 SOCA 会触发 U 相电流。  
  • 计数器归零事件时的 EPWM2 SOCA 会触发 V 相电流。  
  • 计数器归零事件时的 EPWM5 SOCA 会触发 W 相电流。  
  • 初始化代码如下所示:

 e2e.ti.com/.../8103.init.c

e2e.ti.com/.../measurement_5F00_h.txt

e2e.ti.com/.../userconfiguration_5F00_h.txt

通过使用这个 init 函数和其余的代码,我们得到了 ADCC 模块的随机值(检测值:tzfoc.f Iphu_Cur ,tzfoc.f Iphv_Cur ,tzfoc.f Iphw_Cur )。 您能帮助我们解决这个问题吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    可以看到您是从同一 ADC 读取全部三相电流的值、

       tzfoc.f Iphu_Cur =((float32_t) IPHU_CUR_FB_ADCREAD - 2266.0f)* PhCUR_ADCPU_CONS* Ibas;

       tzfoc.f Iphv_Cur =((float32_t) IPHU_CUR_FB_ADCREAD - 2266.0f)* PhCUR_ADCPU_CONS* Ibas;

       tzfoc.f Iphw_Cur =((float32_t) IPHU_CUR_FB_ADCREAD - 2266.0f)* PhCUR_ADCPU_CONS* Ibas;

    我建议您查看 TI 的参考设计、以了解有关配置的一些信息。

    此致、

    Masoud