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.

[参考译文] TMS320F2800156-Q1:增强型捕捉

Guru**** 2473260 points
Other Parts Discussed in Thread: TMS320F2800156-Q1, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1464461/tms320f2800156-q1-enhanced-capture

器件型号:TMS320F2800156-Q1
Thread 中讨论的其他器件: C2000WARE

工具与软件:

开发环境:

MCU:TMS320F2800156-Q1

TRM: TMS320F280015x 实时微控制器技术参考 Manual_RevB_.pdf

CCS:12.7

SDK:C2000Ware_5_02_00_00

图1

图2:

图1源自 TRM
图2显示了基于 syscfg 生成的代码。  

问题1 (ECAP 模块在捕获模式下运行):  

为什么不函数 ECAP_resetcounters()(CTRFILTRESET)复位事件预分频器?
问题2 (ECAP 模块在捕获模式下运行):  

如果我将事件预分频器设置为非零值(不要绕过预分频逻辑)、我将无法获得正确的占空比并且只能检测到频率、 是不是可以?

/BR

塞缪尔

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

    器件型号:TMS320F2800156-Q1

    工具与软件:

    开发环境:

    MCU:TMS320F2800156-Q1

    TRM: TMS320F280015x 实时微控制器技术参考 Manual_RevB_.pdf

    CCS:12.7

    SDK:C2000Ware_5_02_00_00

    图1

    图2

    图1源自 TRM
    图2显示了基于 syscfg 生成的代码。  为什么不调用函数 ECAP_clearGlobalInterrupt()来清除 ECFLG.INT?

    /BR

    塞缪尔

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

    您好!  

    线程自动分配错误、我已将其分配给相应的主题专家。

    对于给您带来的不便和延误、我们深表歉意

    此致、  

    Subham M

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

    尊敬的 Samuel:

    [报价用户 id="556635" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1464461/tms320f2800156-q1-enhanced-capture "]
    为什么不函数 ECAP_resetcounters()(CTRFILTRESET)复位事件预分频器?
    [报价]

    该函数不会重置事件预分频器、因为这些是被使用的分频器、在运行时不会更改。 但是、该 CTRFILTRESET 将复位预分频器逻辑。 在使用了预分频器且发生 CTRFILTRESET 时、计数器复位和预分频逻辑复位。  

    [报价用户 id="556635" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1464461/tms320f2800156-q1-enhanced-capture "]
    如果我将事件预分频器设置为非零值(不要绕过预分频逻辑)、我将无法获得正确的占空比并且只能检测到频率、 是不是可以?

    [报价]

    您必须根据新的预分频值以及频率计算占空比。 如果您确实除以2、则捕获的值将需要包括乘以2以获得实际的 SYSCLK 数。

    [报价 userid="556635" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1464461/tms320f2800156-q1-enhanced-capture/5618639 #5618639"]

    图2显示了基于 syscfg 生成的代码。  为什么不调用函数 ECAP_clearGlobalInterrupt()来清除 ECFLG.INT?

    [报价]

    没有什么东西可以阻止你也这样做。 但是、此示例展示了出于演示目的清除各个标志。

    此致!

    Ryan Ma