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.

[参考译文] TMS320F280049:f280049 MCU 上的智能电表

Guru**** 1828310 points
Other Parts Discussed in Thread: TIDA-010243, MSPM0G3507, ADS131M08
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1394492/tms320f280049-smart-electricity-meter-on-f280049-mcu

器件型号:TMS320F280049
主题中讨论的其他器件:TIDA-010243MSPM0G3507ADS131M08

工具与软件:

各位团队成员、

我正在尝试根据参考设计 TIDA-010243构建一个三相电表、我使用的是 C200 f280049 MCU 而不是 MSPM0G3507。 我已成功实现 MCU 与 ADC ADS131M08进行通信的部分、并且有一个中断例程可在将数据就绪置为低电平时从 ADC 读取 V 和 I 样本。 然后我已经使用计量库软件执行计算并获取评估功率、但当收集了足够数量的样本、以及当系统应计算功率时、由于未设置校准参数、我会看到0输出。

您能帮我弄清楚如何使用该计量库执行校准吗? 文档不是很清晰、我正试图在源代码中进行查看、目前没有成功。 如何使用计量库执行校准?

我的软件中有以下例程:


 

metrology_init_from_nv_data();
metrology_switch_to_normal_mode();
metrology_init();
...
    if ((phase_ready[ph] & PHASE_STATUS_NEW_LOG))
    {
        phase_ready[ph]=0;
        calculate_phase_readings( ph );
        .....
        

函数

calculate_phase_readings( ph );
始终返回零、因为未设置校准数据。

如何执行初始校准?

谢谢

Emanuele Peruzzi.

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

    好的,我发现在 metrology_init ()中,我忘了把数据从 calibration_defaults 复制到 cal_info 结构中,我试图把计量库移植到 f280049中的错误