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.

[参考译文] TMS320F28027F:定时器仿真模式之间的差异

Guru**** 2756075 points

Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/897696/tms320f28027f-difference-between-timer-emulation-modes

主题中讨论的其他器件:C2000WARE

使用 timer2上的中断在我的应用程序中创建1ms 节拍计数器、一切都正常、但有一个参数让我感到困惑。 我尝试了所有3种计时器仿真模式(TIMER_EmulationMode_StopAfterNextDecrement、 TIMER_EmulationMode_StopAtZero、 TIMER_EmulationMode_runfree)、所有这些模式似乎都产生了完全相同的行为。 那么、我想知道它们之间的区别是什么? 它们的工作方式以及影响是什么。

例如、 定时器_EmulationMode_StopAtZero 是否会等到中断被清除后再恢复运行? 这是否意味着、如果它是一个重中断、或者在它发生时有其他中断正在被处理、那么定时器可能不精确? 这是否意味 着 timer_EmulationMode_runfree 在这些条件下可能会导致某些节拍丢失?

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

    Dimitri、

    有关定时器模块的更多信息、请参见第282页的《F2802x 驱动程序库用户指南》(www.ti.com/.../spruhx9.pdf)。

    此致、

    Ozino

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

    这是我首先看到的东西之一。 它只是对变量名称进行短语。 信息不是很丰富

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

    您是否有机会查看 C2000Ware 中的 CpuTimer 示例? 该示例使用具有中断的计时器。 此外、您还可以参考 TRM 第 1.3.5章32位 CPU 定时器 并查看寄存器说明。

    -Ozino

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

    Dimitri、

    正如 Ozino 已经提到的、F2802x 技术参考手册第84-85页中 TIMERxTCR 寄存 器中的仿真控制位"free"和"SOFT"被用来在调试期间控制仿真暂停行为。  这些仿真 位 也存在于其他外设中、例如 ePWM 模块(用于控制时基计数器)、eCAP 模块 (用于控制时间戳计数器)、DAC (用于控制斜坡发生器)和 SPI & SCI & I2C (用于控制数据 通信)。  FREE 位和 SOFT 位可能执行的功能稍有不同、具体取决于  外设、但 它们的运行方式基本非常相似。  在调试期间、调试探针(即仿真器)连接到器件、用户能够在断点处暂停代码、例如、让外设继续运行或在指定状态(例如、计数器等于零或可能是周期匹配)停止。  这在尝试隔离问题时可能很有用。  以 ePWM 模块为例、代码执行可能会停止、但同时仍可以 在输出引脚上生成波形。  当运行 CCS 并在一个断点处停止时、在示波器上持续显示波形时、很容易出现这种情况。

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

    - Ken

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

    因此、它只会对调试产生影响、但在简单运行应用程序时、应该没有差异。 是这样吗?

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

    Dmitri、

    正确。  此外、此类调试通常通过实时仿真模式来完成。

    - Ken