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.

[参考译文] TMS320F28075:不带 GUI 的 SFRA

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/727618/tms320f28075-sfra-without-gui

器件型号:TMS320F28075
Thread 中讨论的其他器件:SFRAcontrolSUITE

您好!  

我们尝试 在不使用 GUI 的情况下使用 SFRA 库。 我们使用 CLA 模块来生成占空比、因此我们在 CLA ISR 内调用 SFRA_F_COLLECT 和 SFRA_F_INC注入(在执行 CLA 任务之后)。 我们每1ms 执行一次 SFRA_F_background。

这就是我们在 SFRA1寄存器中看到的:

起始位= 1

状态永远不会大于2

freqIndex = 0 (它不在增加)

在哪里可以找到状态位的含义? 什么原因可能导致 freqIndex 不增加。

此致、

帕洛马

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

    我们正在尝试了解该模块、因此我们调用了参数= 0 (SFRA_F_INP注入(0))的 SFRA_F_INP注入。
    我们认为注入应该返回一个正弦信号、但获得的值如下:
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    1、29 E+39
    0
    1、29 E+39
    0
    0
    0
    0
    -2,65E-17.
    -2,67E-17.
    -2,67E-17.
    0
    0
    -6,34E+32
    -2,12E+33
    -6,14E-22.
    1、61E+29
    -4,39E+43
    6、07E+34
    0
    4、70 E-07
    6、67 E-18
    1、30E+39
    1、40E+17
    1、30E+39
    0
    -4,26E-22.
    1、82 E-18
    0
    7、81E+38
    0
    -2,69E-17.
    8、37 E-15.
    -7,45E-27.
    -7,44E-27.
    -7,42E-27.
    -2,69E-17.
    0
    8、09E+38
    8、21 E+38
    7、81E+38
    -06156173
    6、49E-21.
    -2,70E-17.
    4、85E-24.
    -7,42E-27.
    8、09E+38
    -7,42E-27.
    6、22 E-19
    8、11 E+38
    6、48 E-19.
    4、69E-07
    9、67 E-24.
    -1,48E+34
    0
    2、91E-17.
    1、30E+39
    -1,05E+36
    6、89E-07
    1,57E-19
    3、62E+19
    -1,06E+43
    -4、05E+37
    9、87E-26.
    -360.674
    8、21 E+38
    0、02531357
    0
    -3,10E+44
    8、21 E+38
    -1,34E-19
    2、51E-18
    8、06E+38
    -1,90E+34
    0
    1、40E+17
    113126288
    0
    8、09E+38
    8、09E+38
    1、05E + 20
    8、09E+38
    -3,10E+44
    -5,05E-22.
    -3,11E+44
    -2,68E-17.
    -6,10E-22.

    有什么想法吗?

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

    您使用的是哪个版本的库,以及从哪里获得?

    您是否使用 TMU 版本?

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

    Manish、您好!

    我们使用的是控制套件中的 SFRA_FTMU_Lib.lib DE SFRA_v1_20_00_00。

    我们在命令文件中分配了 FPUTABLES、但这是错误的。 在28075中、我们似乎不必分配 FPUTABLES。 可以确认吗? 现在、当我们执行 SFRA_F_Inject (0)时、我们会得到一个 sin 信号。

    无论如何、SFRA_F_COLLECK_COLLECT 都不工作。 我们执行它、但 Plant_MagVect、Plant_PhaseVect、OL_MagVect、OL_PhaseVect 数组为0。

    此致、

    帕洛马

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这可能会有所帮助。 我们已经看到正弦信号频率是恒定的。 它不随时间变化。
    此致、

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

    如果使用的是 TMU 版本、则不需要 FPU 表。  

    确保在 CCS 中项目选项下的处理器设置下启用了 TMU 选项、  

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

    添加了以下库:
    rts2800_fpu32_fast_补 编.lib
    SFRA_F_Lib.lib

    我们有以下设置:
    --float_support=fpu32
    --tmu_support=tmu0
    --fp_mode=relaxed

    我们是否需要其他东西?

    帕洛马
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    SFRA_F_Lib.lib 不使用 TMU、在这种情况下、您需要为 FPUTables 分配一些空间、它们不在 ROM 中。

    2.可以使用 SFRA_F_TMU Lib、这将使用 TMU、在这种情况下不使用 FPU 表。

    我强烈建议您运行实验、在已知良好的代码段上、我们有几个使用此库的示例、使用 F28377的示例将非常接近 F28075

    C:\ti\controlSUITE\development_kits\BOOSTXL_BUCKCONV\v1_01_00_00\Buck_VMC_F2837xS
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很抱歉、我是个混合名称。 我们已使用 SFRA_FTMU_Lib.lib。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我建议查看我上面提到的示例、并重复您的测试案例。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此外、您可能还需要创建一个变量并按值传递该变量、而不是常量。

    它不应该起作用、但我从未通过过常量、因此这将是一个尝试的建议

    (SFRA_F_INject (var))。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    还要确保您的 SFRA_DATA 位于与 SFRA 使用情况一致的存储器中。 也就是说、在 SFRA 上、我们使用直接寻址、这意味着存储器需要能够适应16位地址

    请参阅

    e2e.ti.com/.../650418

    您可以通过在 LS0或 LS1中对 SFRA_DATA 进行西格式化来确保这一点
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们有:

    • RAMM1中的 SFRA_F_Data
    • 从 RAMGS 运行 SFRA 库。

    RAMGS 使用 直接寻址、但 RAMLS0和 RAMLS1 DMA 也是吗? 我无法在数据表中看到它。  

    帕洛马

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

    如果您在 RAMM1中有 SFRA 数据、那么这应该是可以的。  

    您也可以在 LS0或 LS1中运行 SFRA。

    DMA 与它无关。

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

    抱歉、您说:"在 SFRA 上 、我们使用直接寻址"。  DMA 不是直接寻址?

    根据28075数据表、LS0和 LS1不是 DMA:

    在 PAGE 0或 PAGE 1中分配存储器是否重要?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    直接寻址是一种指令模式、DMA 是一种外设、与之无关。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、谢谢。 我现在明白了。  

    最后、我们实施了"自定义 SFRA 模块"。

    此致、

    帕洛马

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