主题中讨论的其他器件:SysConfig
工具与软件:
您好!
我遇到问题 Task_sleep 在 TI-RTOS 中、任务的延迟明显长于预期。 具体来说、我尝试通过指定Task_sleep(10000)
(100ms = 10000次10 µs 滴答周期)将任务延迟100ms。 但实际延迟始终约为1.221秒。
以下是配置和设置:
- 节拍周期 :10微秒、配置为周期模式。
- 任务 :单个任务处于活动状态、所有其他任务都已注释掉。
- 硬件计时器 : GPTIM1用于在此任务中对脉冲进行计数。
- 观察结果 :延迟比预期的要长,但在使用 FreeRTOS 和使用生成类似代码时,没有发现此问题
vTaskDelay
。
我已经尝试了以下方法:
- 验证了
Clock.tickPeriod
是否在 SysConfig 中正确设置为10 µs。 - 已确保任务是唯一的活动任务、并且环境最小。
问题:
- 这可能会导致什么原因 Task_sleep 导致延迟比预期更长?
- 之间是否存在已知的交互 Task_sleep 可能会干扰时序精度?
- 是否有办法通过实现更准确的延迟 Task_sleep 或者 TI-RTOS 中的替代方法?
我们非常感谢您提供任何见解或指导。 谢谢!