int main( void )
{
Bsp_Init();
os_sys_init_user( Task_SysInit,
50,
gTaskStack_SysInit,
DEF_StakSize_SysInit ); //系统初始化运行第一个任务 4个参数
while( 1 )
{
;
}
引用地址:关于RTL创建的任务理解
}
//1. 建立错误处理任务
Error_TaskID = os_tsk_create_user( Task_SysError, 30, gTaskStack_SysError, DEF_StakSize_SysError );
//2. 建立卡处理任务
gTASKID_CardProc = os_tsk_create_user( Task_CardDeal, 20, gTaskStack_CardProc, DEF_StakSize_CardProc );
//3. 建立定时处理任务
gTASKID_SysTime = os_tsk_create_user( Task_SysTime, 15, gTaskStack_SysTime, DEF_StakSize_SysTime );
//4. 建立菜单处理任务
gTASKID_MenuProc = os_tsk_create_user( Task_MenuProc, 10, gTaskStack_MenuProc, DEF_StakSize_MenuProc );
建立任务只是给一个表示指针标号像一个ID号说明有了这个任务,并不是去运行完里面的程序才能走下来。
它会根据优先级低2个参数来选的,因为这些任务是在一个高任务的优先级里面创建的50的任务里创建的它会等50的做完然后根据自身的优先级去执行,当然有抢占和轮循等一系列的系统控制。
小广播
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐
最新单片机文章
更多精选电路图
更多热门文章
更多每日新闻
更多往期活动
11月13日历史上的今天
厂商技术中心