RTX51 Full :使用四个任务优先权完成同时存在时间片轮转调度和抢先的任务切换 RTX51工作在
与中断功能相似的状态下 信号和信息可以通过邮箱系统在任务之间互相传递 你可以从一存
储池中分配和释放内存 你可以强迫一个任务等待中断 超时或者是从另一个任务或中断发出的
信号或信息
RTX51 Tiny:仅支持时间片轮转任务切换和使用信号进行任务切换 不支持抢先式的任务切换
不包括消息历程 没有存储器池分配程序
#include "config.h"// 时钟 IO口配置头文件
#include "USART.h"
#include "stdio.h"
#include "RTX51TNY.h" //包含系统头文件
void MainTask(void) _task_ 0 //任务0,首先进入这里
{
UartInit();//串口初始化
os_create_task (1); //创建任务1、2
os_create_task (2);
os_delete_task (0); //挂起本任务0,不再运行本任务
}
void LEDTask(void) _task_ 1 //任务1
{
while(1)
{
printf("11111111111\r\n");
}
}
void UARTTask(void) _task_ 2 //任务2
{
while(1)
{
printf("task task task \r\n");
}
}
char os_wait(
unsigned char event_sel, /*要等待的事件*/
unsigned char ticks, /*要等待的滴答数*/
unsigned int dammy); /*无用参数*/
K_SIG | 等待一个信号 |
---|---|
K_TMO | 等待超时 |
K_IVL | 等待定时器滴答的间隔 |