📄 ext3.c
字号:
/*********************************************************************************************************
** Small RTOS(51)
** The Real-Time Kernel(For Keil c51)
**
** (c) Copyright 2002-2003, chenmingji
** All Rights Reserved
**
** V1.20.0
**
**
**--------------文件信息--------------------------------------------------------------------------------
**文 件 名: ext3.c
**创 建 人: 陈明计
**最后修改日期: 2003年8月3日
**描 述: ext3源代码。
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 陈明计
** 版 本: V0.50
** 日 期: 2002年2月22日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 版 本: V1.11.0
** 日 期: 2003年12月2日
** 描 述: 删除TaskC代码
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 版 本: V1.12.0
** 日 期: 2003年12月30日
** 描 述: 无变化
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 版 本: V1.20.0
** 日 期: 2003年8月3日
** 描 述: 根据新版本要求修改
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人:
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#include "config.h"
void TaskA(void);
void TaskB(void);
uint32 StackS[11][64];
void NotUse(void)
{
}
int main(void)
{
OSInit();
PC_DispClrScr(DISP_FGND_WHITE + DISP_BGND_BLACK);
PC_DispStr(15, 0, "Small RTOS(51), the Real-Time Kernel(For LPC2104)", DISP_FGND_WHITE + DISP_BGND_RED + DISP_BLINK);
PC_DispStr(35, 1, "ChenMingJi", DISP_FGND_WHITE);
PC_DispStr(35, 3, "EXAMPLE #3", DISP_FGND_WHITE);
TargetInit();
OSTaskCreate(TaskA, StackS[0] + 64 - 1, 0);
OSTaskCreate(TaskB, StackS[1] + 64 - 1, 1);
OSTaskCreate(TaskB, StackS[2] + 64 - 1, 2);
OSTaskCreate(TaskB, StackS[3] + 64 - 1, 3);
OSTaskCreate(TaskB, StackS[4] + 64 - 1, 4);
OSTaskCreate(TaskB, StackS[5] + 64 - 1, 5);
OSTaskCreate(TaskB, StackS[6] + 64 - 1, 6);
OSTaskCreate(TaskB, StackS[7] + 64 - 1, 7);
OSTaskCreate(TaskB, StackS[8] + 64 - 1, 8);
OSTaskCreate(TaskB, StackS[9] + 64 - 1, 9);
while(1)
{
NotUse();
PCON = PCON | 0x01; /* CPU进入休眠状态 */
}
return 0;
}
uint8 ShowChar;
void TaskA(void)
{
uint8 x,y;
while (1)
{
OSWait(K_SIG,0);
x = random(80);
y = random(20);
PC_DispChar(x, y + 5, ShowChar, DISP_FGND_LIGHT_GRAY);
}
}
void TaskB(void)
{
while (1)
{
ShowChar = OSRunningTaskID()+'0';
OSSendSignal(0);
OSWait(K_TMO,1);
}
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -