欢迎来到天天文库
浏览记录
ID:44957737
大小:393.00 KB
页数:15页
时间:2019-11-06
《第20章-51系列单片机的多任务操作系统+》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、21天学51单片机开发第二十讲:51系列单片机的多任务操作系统课程安排RTX-51实时多任务操作系统简介RTX-51Tiny的任务管理RTX-51Tiny的系统函数RTX-51与单任务程序的比较RTX-51循环任务调度程序设计RTX-51事件任务调度程序设计RTX-51信号任务调度程序设计RTX-51优先级及抢先任务切换程序设计RTX-51实时多任务操作系统简介多任务操作系统也就是可以运行多个程序的平台。RTX-51是一种适用于51系列单片机的实时多任务操作系统(RTOS)。RTX-51实时多任务系统RTX-51FULLRTX-51TinyRTX-51实时多任务系统
2、特点任务调度信息传递中断CAN通信BITBUS通信RTX-51Tiny的任务管理在RTX-51Tiny中支持5种任务状态,任何一个任务必须处于其中一个确定的状态。READYRUNINGWAITINGDELETEDTIMEOUTRTX-51Tiny支持的事件信号(SIGNAL)超时(TIMEOUT)时间间隔事件(INTERVAL)RTX-51Tiny的系统函数信号发送函数isr_send_signal信号标志清除函数os_clear_signal任务启动函数os_create_task任务删除函数os_delete_task当前任务号函数os_running_task
3、_id信号发送函数os_send_signal等待函数os_wait等待函数os_wait1等待函数os_wait2RTX-51与单任务程序的比较简单的单任务C51程序01#include02#include03intcount=0;04voidmain()//主函数05{06while(1)//主循环07{08count++;//计数器加109printf("SingleTask:count=%d",count);//输出10if(count==500)11{12count=0;//归零13}14}15}RTX-51与单任务程序
4、的比较多任务循环C51程序01#include02#include03intcount0=0;04intcount1=0;05voidmain()//主函数06{07while(1)//主循环08{09count0++;//计数器count0加110printf("SingleProcessTask0:count0=%d",count0);11count1++;//计数器count1加112printf("SingleProcessTask1:count1=%d",count1);13if(count0==500)14{1
5、5count0=0;16}17if(count1==500)18{19count1=0;20}21}22}RTX-51与单任务程序的比较多任务RTX-51程序01#include02#include03#include04intcount0=0;05intcount1=0;06Thread0()_task_0//任务007{08os_create_task(1);//创建任务109while(1)10{11printf("Task0:count0=%d",count0++);//打印输出count012
6、if(count0==500)13{14count0=0;15}16}17}18Thread1()_task_1//任务119{20while(1)21{22printf("Task1:count1=%d",count1++);//打印输出count123if(count1==500)24{25count1=0;26}27}28}RTX-51循环任务调度程序设计RTX-51循环任务调度是按照预先划分的时间片来循环轮流执行多个任务的。01#include02#include03#include04Thre
7、ad0()_task_0//任务005{06P1=0x00;//初始化07P2=0x00;08os_create_task(1);//创建任务109while(1)10{11P1=P1+1;//P1端口递增12}13}14Thread1()_task_1//任务115{16while(1)17{18P2=P2+1;//P2端口递增19}20}RTX-51事件任务调度程序设计RTX-51事件任务调度是使用事件来实现多任务之间切换的调度方式。01#include02#include03#include04i
此文档下载收益归作者所有