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.

[参考译文] TMS320F28377S:ePWM TZFLG 设置为1

Guru**** 2468460 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1118292/tms320f28377s-epwm-tzflg-set-to-1

器件型号:TMS320F28377S

大家好、

以下是客户提出的问题、可能需要您的帮助:

调试28377s 时、TZFLG.OST 被异常地设置为1。

执行到时执行初始化函数中的代码  , TZFlG.OST 将设置为1。

TZ 信号输入:

执行指令前的寄存器状态:

执行后:

谢谢、此致

耶鲁李

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

    您好、Yale、

    ~程序执行到初始化函数时、在初始化函数中引用 userid="514648" URL"μ C/support/microriors/c2000-micro-group/C2000/f/c2000-micro-forum-forum/1118292/tms320f28377s-ePWM-tzflg-set-to-1"]  , TZFlg.OST 将设置为1。

    这对应于什么指令?

    [引用 userid="514648" URL"~/support/microrims/C2000-microset-group/C2000/f/C2000-microrims-forum/1118292/tms320f28377s-ePWM-tzflg-set-to-1"]执行指令前的注册状态:

    在随附的屏幕截图中 、TZFLG 的 OST 位在"执行前"和"执行后"映像上都设置。  

    此致、

    Marlyn

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

    您好、Marlyn、

    感谢您的支持!

    [引用 userid="315358" url="~/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum/1118292/tms320f28377s-ePWM-tzflg-set-to-1/4146393#4146393"]在" 执行之前和"执行之前"设置 TZFOST"的引用位的屏幕截图中。]

    很抱歉、他们 以前上传了错误的屏幕截图。 以下是正确的屏幕截图:

    执行前:

    执行后:

    [~引语 userid="315358" URL"/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum/1118292/tms320f28377s-ePWM-tzflg-set-to-1/4146393#4146393"]此操作对应的指令是什么?

    第4个屏幕截图中的此说明导致 异常集:  

    MOVL *SP++, XAR2

    它看起来与确切的 C 指令不对应。

     异常集之前的 C 指令在第一个屏幕截图中被排列:  

    theCompManager->startAllComponents();

    谢谢、此致

    耶鲁李

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

    您好、Yale、

    感谢您提供正确的屏幕截图。 是否可以知道 startAllComponents()中的内容? 此外、还有 ePWM 初始化。

    此致、

    Marlyn

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

    您好、Marlyn、

    客户仅提供 了 startAllComponents()。 我正在尝试获取 ePWM 初始化。

    /*MEMBERFUNC*/ void CBasCompManager::startAllComponents
    (
    )
    /* FUNCTIONAL_DESCRIPTION
    
    Start all components in the order of adding them to the system.
    */
    {
    for (UINT16 ui=0; ui LT m_uiCompInitCount; ui++)
    {
    ERRCODE errCode = m_apCompInitList[ui]->start();
    
    CHECK_INIT(errCode);
    
    // Delay of going on with start() routines of other components.
    while (NOT m_apCompInitList[ui]->startIsFinished())
    {
    // wait until startup of the component has been finished
    }
    }
    }

    谢谢、此致

    耶鲁李

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

    谢谢 Yale。 这看起来是一个自定义函数。 如果不详细了解 EPWM 模块的配置方式及其配置位置、就很难提出可能发生的情况。 是否可以单步执行 startAllComponents 函数以更好地了解 OST 位在代码中的更改位置?

    此致、

    Marlyn

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

    您好、 Marlyn、

    感谢您的后续支持!

    我没有客户的回复。 那么、我将关闭该线程。 很抱歉耽误你的回复和确认。

    谢谢、此致

    耶鲁李