xTimerIsTimerActive() 用于 FreeRTOS 中的周期性定时器

xTimerIsTimerActive() for Periodic Timer in FreeRTOS

我目前正在 Realtek Ameba 板上开发 FreeRTOS v8.1.2,我正在使用 IAR Embedded Workbench IDE.

我在使用 FreeRTOS xTimerIsTimerActive() API 时遇到了一个奇怪的问题。 我有一个周期性定时器,对于这个周期性定时器,即使我通过调用 xTimerStop()xTimerDelete() 显式停止和删除定时器,xTimerIsTimerActive() 总是返回 True 实际上代码是用一个重复方式。 但是 xTimerIsTimerActive() 也 returns 即使未创建计时器并且计时器句柄初始化为 NULL 也是如此。

抱歉,我不能post这里的代码,因为它是专有的。

您只能对有效选项调用 API 函数。如果您在已删除的 software timer 上调用 xTimerIsTimerActive(),则该对象不再有效且行为未定。