📄 main.c
字号:
/* 本例程 uCOS-II 版本为 V2.84 于 keil C51 V8.08a 下的工程环境编译,仅创建两个LED闪烁任务于 P1.0 与 P1.1 上,
P1.0 每隔 1/2 秒闪动一次,P1.1 每隔 1/3 秒闪动一次,而此例程运行于内 RAM 仅需 160 Byte 的51内核单片机即可。*/
#include <ucos_ii.h> /* 此例程之 8051 使用 11.0592MHz 晶振时,依 Timer0 中断发生的 TimeTicks 为每秒 50 次 */
sbit LED0=P1^0;
sbit LED1=P1^1;
OS_STK Task0Stack[MaxStkSize]; /* Define The Task0 Stack 定义用户任务0的堆栈 */
OS_STK Task1Stack[MaxStkSize]; /* Define The Task1 Stack 定义用户任务0的堆栈 */
void Task0(void *ppdata)
{
ppdata = ppdata; /* 避免编译警告 */
for(;;)
{
LED0 = ~LED0; /* 任务 0 的程序添加于此 */
OSTimeDly(OS_TICKS_PER_SEC/2); /* 宣告这任务进入 1/2 秒的延时状态 */
}
}
void Task1(void *ppdata)
{
ppdata = ppdata; /* 避免编译警告 */
for(;;)
{
LED1 = ~LED1; /* 任务 1 的程序添加于此 */
OSTimeDly(OS_TICKS_PER_SEC/3); /* 宣告这任务进入 1/3 秒的延时状态 */
}
}
void main(void)
{
OSInit();
TargetInit(); /* 目标板初始化 */
OSTaskCreate(Task0,(void *)0,&Task0Stack[MaxStkSize-1],0);
OSTaskCreate(Task1,(void *)0,&Task1Stack[MaxStkSize-1],1);
OSStart();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -