裸机下的调度器
使用软件定时器实现调度/***************************************************************************//**
* [url=home.php?mod=space&uid=247401]@brief[/url] 设置ctimer定时器
* [url=home.php?mod=space&uid=1543424]@Details[/url]
*
* @param[in] period 运行周期
* @param[in] counter 运行次数
* @param[in] p_func 函数指针
* @param[in] p_arg 函数
* [url=home.php?mod=space&uid=266161]@return[/url] 分配的定时器指针,如果没有定时器分配,返回NULL
*
* [url=home.php?mod=space&uid=536309]@NOTE[/url]
* [url=home.php?mod=space&uid=8537]@see[/url]
* [url=home.php?mod=space&uid=157211]@warning[/url]
******************************************************************************/
struct ctimer* ctimer_set(UINT32 ulPeriod, UINT32 ulCount, void (*pfFunc)(void* p), void* pArg);
void ctimer_mainloop(void);
void task1_process(void* pArg)
{
}
void task2_process(void* pArg)
{
}
int main(void)
{
ctimer_set( 5, 0 , task1_process, NULL);
ctimer_set( 20, 0 , task1_process, NULL);
while(1)
{
ctimer_mainloop();
}
}
|