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.

[参考译文] TMS570LC4357:使用 FreeRTOS 时 PWM ISR 执行计时抖动

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1230106/tms570lc4357-pwm-isr-execution-timing-jitter-with-freertos

器件型号:TMS570LC4357

您好、我们在执行 PWM ISR 时序时遇到问题。 HW 引脚上的 PWM 时序正常。 Isuue 观察到 ISR 的进入时间有一个时序偏好周期。 该项目使用 FreeRTOS 生成。 如果没有 RTOS、则没有抖动。

为了降低复杂性、创建了一个简单的 FreeRTOS 项目、其中 etPWM1配置有中心对齐的40微秒周期上下计数器。 配置了一个任务的 RTOS、这将更新 PWM 的50%占空比。 PWM ISR 配置有零计数事件。 ISR 周期的测量通过1完成。 切换 GIO 并使用示波器2。 使用 RTI 1计数器捕获周期。

添加了 RTI 计数器的存储器捕获的示波器结果和分析。

我们已经尝试修改了 RTI 0和 etPWM 1的中断优先级、仍然有抖动。 我们观察到抖动在60毫秒内具有周期性。

已尝试删除 etPWM1并仅使用 RTI 1中断并测量 RTI 1 ISR 周期。 此测量值也显示了周期为60mSec 的抖动。

我附上了范围和电子表格的截图、也作为我的项目。

此处可能存在什么问题、请帮助我。

 e2e.ti.com/.../8054.EtPWMtest.zip  

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

    您好 Chandrasekhar:

    我们已着手解决您的问题、并将很快提供更新。

    --

    谢谢。此致、
    Jagadish。

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

    您好、您找到了解决方案吗? 我无法找到导致延迟的原因。

    谢谢。

    钱德拉

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

    您好 Chandrasekhar:

    很抱歉我的答复出现延误。

    刚才我通过取消注释 GIOA_0切换行来调试您的项目

    在执行调试之后、我在 ISR 执行中没有看到任何抖动问题  

    我只能在 GIOA_0上看到80us 周期以及50%占空比波形。

    我在 TMS570LC4357 Launchpad 上进行了测试。

    --

    谢谢。此致、
    Jagadish。

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

    Jagadish、您好!

    我还对  TMS570LC4357 Launchpad 进行了测试。 我们可能无法使用带宽受限的逻辑探头捕获抖动。

    您可以尝试使用4000点缓冲区记录的记录方法和使用 Excel 和内存转储的图。

    这是我用于分析4000点的电子表格 data.e2e.ti.com/.../TickAnalysis.xlsx

    钱德拉

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

    您好 Chandra Sekhar:

    实际上、它应该可以捕获正确。

    在您随附的原理图中、有时中断处理程序会在52uSec 后生成、有时会在28uSec 以下生成、对吗?

    我正在使用的逻辑分析仪也能够捕获0.04uS 周期波形。

    总之、我将再次尝试使用 CRO 并让您知道结果。

    --

    谢谢。此致、
    Jagadish。

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

    您好 Chandra Sekhar:

    我还使用 CRO 进行测量、可以看到中断之间仅间隔40us。

    --

    谢谢。此致、
    Jagadish。