UCOS-II编程要点讲解

UCOS-II编程要点讲解

ID:37828213

大小:262.15 KB

页数:12页

时间:2019-06-01

UCOS-II编程要点讲解_第1页
UCOS-II编程要点讲解_第2页
UCOS-II编程要点讲解_第3页
UCOS-II编程要点讲解_第4页
UCOS-II编程要点讲解_第5页
资源描述:

《UCOS-II编程要点讲解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、UCOSII编程要点一、任务状态二、系统函数OSIint():系统初始化函数,并建立空闲任务;OSTastCreat(void(*task)(void*pd),void*pdata,OS_STK*ptos,INT8Uprio):任务建立,进入就绪态准备运行;参数:task是指向任务代码的指针。Pdata指向一个数据结构,该结构用来在建立任务时向任务传递参数。ptos为指向任务堆栈栈顶的指针。prio为任务的优先级OSTaskCreatExt(void(*task)(void*pd),void*pdata,OS_STK*ptos,INT8Uprio,INT16

2、Uid,OS_STK*pbos,INT32Ustk_size,void*pext,INT16Uopt):任务建立,进入就绪态准备运行;OSTaskChangePrio():改变任务的优先级;INT8UOSTaskChangePrio(INT8Uoldprio,INT8Unewprio);参数:oldprio是任务原先的优先级。newprio是任务的新优先级。OSTaskDel():任务睡眠;OSTaskDel()INT8UOSTaskDel(INT8Uprio);参数:prio为指定要删除任务的优先级,也可以用参数OS_PRIO_SELF代替OSStart(

3、):启动任务;OSTimeDly():任务延迟,进入等待状态;OSTimeDly()voidOSTimeDly(INT16Uticks);参数:ticks为要延时的时钟节拍数OSTimeDlyHMSM():任务延迟,进入等待状态;OSTimeDlyHMSM()voidOSTimeDlyHMSM(INT8Uhours,INT8Uminutes,INT8Useconds,INT8Umilli);1UCOSII编程要点参数:hours为延时小时数,范围从0-255。minutes为延时分钟数,范围从0-59。seconds为延时秒数,范围从0-59。milli为延

4、时毫秒数,范围从0-999。OSTimeDlyResume():让处在延时期的任务结束延时;OSTimeDlyResume()voidOSTimeDlyResume(INT8Uprio);参数:prio为指定要唤醒任务的优先级。OSTimeTick():延迟的任务就绪;OSTimeTick()voidOSTimeTick(void);OSTimTickHook():时钟节拍中断服务用户函数;OSTime():累加从开机以来的时间;OSSemPend():任务进入等待状态(WAITING);OSSemPend()VoidOSSemPend(OS_EVNNT*p

5、event,INT16Utimeout,int8u*err);参数:pevent是指向信号量的指针。该指针的值在建立该信号量时可以得到。Timeout允许一个任务在经过了指定数目的时钟节拍后还没有得到需要的信号量时恢复运行状态。如果该值为零表示任务将持续的等待信号量。最大的等待时间为65535个时钟节拍。Err是指向包含错误码的变量的指针。OSMboxPend():任务进入等待状态(WAITING);OSMboxPend()Void*OSMboxPend(OS_EVNNT*pevent,INT16Utimeout,int8u*err);参数:pevent是指

6、向即将接受消息的消息邮箱的指针。该指针的值在建立该消息邮箱时可以得到。Timeout允许一个任务在经过了指定数目的时钟节拍后还没有得到需要的消息时恢复运行。如果该值为零表示任务将持续的等待消息。Err是指向包含错误码的变量的指针。OSQPend():任务进入等待状态(WAITING);OSQPend()Void*OSQPend(OS_EVENT*pevent,INT16Utimeout,INT8U*err);参数:pevent是指向即将接受消息的队列的指针。该指针的值在建立该队列时可以得到。Timeout允许一个任务在经过了指定数目的时钟节拍后还没有得到需要

7、的消息时恢复运行状态。如果该值为零表示任务将持续的等待消息。Err是指向包含错误码的变量的指针。OSTaskSuspend():挂起任务;OSTaskSuspend()INT8UOSTaskSuspend(INT8Uprio);参数:prio为指定要获取挂起的任务优先级,也可以指定参数OS_PRIO_SELF,挂起任务本身。OSTaskDel():删除任务;OSTaskDel()INT8UOSTaskDel(INT8Uprio);参数:prio为指定要删除任务的优先级,也可以用参数OS_PRIO_SELF代替OSTaskDelReq():请求删除任务;OST

8、askDelReq()INT8UOSTaskDel(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。