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.

[参考译文] TMS320F280025C:tms320f280025c

Guru**** 2457760 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1073258/tms320f280025c-tms320f280025c

部件号:TMS320F280025C
“线程:C2000WARE”中讨论的其它部件

尊敬的团队:

我使用 了 ECAP_ex2_capture _PWM 示例代码,并且能够在监视表达式窗口中看到计数器值!

在此 ECAP_ex2_capture _PWM   示例中,生成最大25kHz PWM,该引脚连接到 ECAP 引脚

我的问题是:

我想知道如何计算捕获计数的时间?

[根据我的理解,我们必须为 eCAP 和 时间计算设置时钟((1 /ECAP_clock) x no.of captured_counts)]对吗?

此致,

Shivam    

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

    Shivam 您好,

    是的,这是正确的。

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

    你好,弗兰克,

    感谢您的回复!

    请指导我如何设置内部振荡器的时钟,以及如何从内部振荡器设置 eCAP 的时钟?

    此致,

    Shivam

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

    Shivam 您好,

    [引用 userid="491958" url="~ë/support/icns/c2000-icroms-group/c2f/c2000-icroms-forume/1073258/tms320f280025c-tms320f280025c/3972651#3972651"],您能否指导我如何设置内部振荡器的时钟以及如何设置时钟 eCAP?]

    您是否在询问如何将 C2000Ware 示例中配置的时钟源从 XTAL 更改为 INTOSC?

    如果是这样,您可以在“device.h”文件中进行此更改。 您需要更新“device_setclock _CFG”宏。

    至以下:

    #define DEVICE_SETCLOCK_CFG          (SYSCTL_OSCSRC_OSC2 | SYSCTL_IMULT(30) | \
                                          SYSCTL_REFDIV(1) | SYSCTL_ODIV(3) | \
                                          SYSCTL_SYSDIV(1) | SYSCTL_PLL_ENABLE | \
                                          SYSCTL_DCC_BASE_0)

    ECAP 将使用您使用的任何时钟作为系统时钟。

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

    你好,弗兰克,

    非常感谢!!

    它按照你的建议运行!!

     

    正如您所说,eCAP 时钟与系统时钟相等,但还有一些其他配置将时钟设置为100Mhz,等于10ns。

    因此,如果我将10ns x NO_of_ECAP_Counts 相乘,这等于捕获时间

     (如果我考虑100Mhz,这是完美的)。

    但当我增加 PWM 周期时,eCAP 计数器将重置

     (PWM 周期>67000)  

    实际上,我想测量大约85毫秒的信号

    那么我该如何测量85毫秒的信号?

    此致,

    Shivam

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

    Shivam,

    因此,ECAP 计数器为32位。 您不应该看到它被重置85毫秒(8,500,000个计数)。 您如何确定 ECAP 计数器正在重置? 溢出标志是否已设置?

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

    你好,弗兰克,

    感谢您的回复!

    我的问题解决了!!

    实际上,我在  PWM 内部加载67000个值,这就是它溢出的原因。

    现在,我已将外部 PWM 应用到微控制器,而不是内部。

    我可以在  监视表达式中看到 eCAP 计数。 [计数* 10ns (10MHz) =输出时间(以纳秒为单位)]  

    非常感谢!

    此致,

    迪帕克

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

    很高兴听到它现在工作了! 如果您遇到了更多问题,请告诉我们。