工具/软件:Code Composer Studio
我想创建两个任务,例如任务1和任务2,具有相同的优先级和
这些任务(Task1和task2)必须每5毫秒同时运行一次。 如果Task1为
运行task2必须等待Task1结束。
我使用了以下API Task_create和Clock_create来使其工作。
如果两者具有相同的优先级并每5毫秒运行这些任务,是否有更好的示例?
谢谢!
Gangadhar
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.
工具/软件:Code Composer Studio
我想创建两个任务,例如任务1和任务2,具有相同的优先级和
这些任务(Task1和task2)必须每5毫秒同时运行一次。 如果Task1为
运行task2必须等待Task1结束。
我使用了以下API Task_create和Clock_create来使其工作。
如果两者具有相同的优先级并每5毫秒运行这些任务,是否有更好的示例?
谢谢!
Gangadhar
Todd,您好!
感谢您的回复。 我想运行每个任务(Task1和task2) 5毫秒,在满足某些条件后,将Task1更改为运行10毫秒或更短,并且不更改task2时间意味着它始终在5毫秒运行。 因此,请根据条件继续更改Task1时间。
目前,我已使用OMAPL137的时间片和事件示例开发了我的示例。
此外,还可以在使用Clock_create API以及Clock_setPeriod API创建时钟处理程序时设置分段时间段。
谢谢!
Gangadhar
你好,Gangadhar,
听起来您需要两个信号灯和两个时钟功能,以使它们处于不同的速率。 所有时钟功能都必须是时钟周期的倍数(默认为1毫秒)。 因此,5ms和10ms都很好。 除非您将时钟周期更改为其中的一个因子(例如 500US)。 注意:您会得到每个时钟周期的中断,因此您不想将其设置得太低(否则,您将有太多的中断需要处理)。
注意对于低功耗MCU器件,我们提供了tick抑制和其他技巧,以最小化中断的数量。 如果有人查看此线程但正在使用其中一种设备,我会添加此评论。
托德
Todd,您好!
感谢您的建议。我可以使用两个信号灯和两个时钟功能以不同的速率创建和运行两个任务。 我不想将时钟周期设置为微秒,将始终仅使用毫秒的分值。
我还有一个要求,比如我们可以通过 使用scanf从键盘传递值来更改Task1在运行时的速率, Clock_setPeriod API可以使用该值来更改Task1的速率。 我尝试使用scanf,但它不起作用。 请告诉我,我们可以通过其他方式传递价值并更改其运行时间。
谢谢!
Gangadhar