• 大小: 8.13MB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-31
  • 语言: C/C++
  • 标签: ucos  

资源简介

ucos移植于VC6平台,可直接使用,外加一个配置文档

资源截图

代码片段和文件信息

/*
*********************************************************************************************************
*                                                uC/OS-II
*                                          The Real-Time Kernel
*
description: 在前一个版本的基础上增加了cd命令

date: 20050429
author: 文佳 Email:ganganwen@163.com 
*********************************************************************************************************
*/

#include “includes.h“
#include “fs_api.h“
/*
*********************************************************************************************************
*                                               CONSTANTS
*********************************************************************************************************
*/

#define  TASK_STK_SIZE                 2048       /* Size of each task‘s stacks (# of WORDs)            */
#define  N_TASKS                        10       /* Number of identical tasks                          */

#define TaskStart_Prio 1
#define Task1_Prio 2

/*
*********************************************************************************************************
*                                               VARIABLES
*********************************************************************************************************
*/

OS_STK  TaskStk[N_TASKS][TASK_STK_SIZE];    // Tasks stacks

HANDLE mainhandle; //主线程句柄
CONTEXT Context; //主线程切换上下文
BOOLEAN FlagEn = 1; //增加一个全局变量,做为是否时钟调度的标志


/*
*********************************************************************************************************
*                                           FUNCTION PROTOTYPES
*********************************************************************************************************
*/
void TaskStart(void * pParam) ;
void Task1(void * pParam) ;                            /* Function prototypes of tasks                  */

void VCInit(void); //初始化相关变量一定需要

/*$PAGE*/
/*
*********************************************************************************************************
*                                                MAIN
*********************************************************************************************************
*/

int main(int argc char **argv)
{
VCInit(); //初始化一些变量

OSInit();
FS_Init();         /* Init the file system */
OSTaskCreate(TaskStart 0 &TaskStk[0][TASK_STK_SIZE-1] TaskStart_Prio);
OSTaskCreate(shelltask 0 &TaskStk[1][TASK_STK_SIZE-1] Task1_Prio);

OSStart(); //start never return
FS_Exit();         /* End using the file system */
return 0;
}

void VCInit(void)
{
HANDLE cpct;
Context.ContextFlags = CONTEXT_CONTROL;
cp = GetCurrentProcess(); //得到当前进程句柄
ct = GetCurrentThread(); //得到当前线程伪句柄
DuplicateHandle(cp ct cp &mainhandle 0 TRUE 2); //伪句柄转换得到线程真句柄

}

void TaskStart(void * pParam) 
{
char err;
OS_EVENT *sem1;

timeSetEvent(1000/OS_TICKS_PER_SEC 0 OSTickISR 0 TIME_PERIOD

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       7592  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\api_dir.c

     文件       2562  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\api_in.c

     文件       1230  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\api_int.h

     文件      14787  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\api_misc.c

     文件       2488  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\api_out.c

     文件      12787  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\fs_api.h

     文件       1429  2005-04-11 21:32  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\fs_dev.h

     文件       2231  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\fs_fsl.h

     文件       8762  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\fs_info.c

     文件       2293  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\API\fs_int.h

     文件      10338  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\CLIB\clibmisc.c

     文件       1930  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\CLIB\fs_clib.h

     文件      14849  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\CONFIG\EP7312\fs_conf.h

     文件       2541  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\CONFIG\EP7312\fs_port.h

     文件      14657  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\CONFIG\M16C_137X_IP\fs_conf.h

     文件       2541  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\CONFIG\M16C_137X_IP\fs_port.h

     文件      15607  2005-04-25 16:36  VC6 UCOS2\ucos_vc\ucos_vc\FS\CONFIG\Win32\fs_conf.h

     文件       2610  2005-04-25 18:27  VC6 UCOS2\ucos_vc\ucos_vc\FS\CONFIG\Win32\fs_port.h

     文件      15342  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\IDE\hardware\EP7312\ide_X_hw.c

     文件       2441  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\IDE\hardware\EP7312\ide_X_hw.h

     文件      19805  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\IDE\hardware\sed137xe_v1r0\ide_X_hw.c

     文件       2529  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\IDE\hardware\sed137xe_v1r0\ide_X_hw.h

     文件       1330  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\IDE\ide.h

     文件       8097  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\IDE\ide_drv.c

     文件       7455  2005-05-03 19:00  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\ram\r_misc.c

     文件      11034  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\smc\hardware\EP7312\smc_X_hw.c

     文件       2111  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\smc\hardware\EP7312\smc_X_hw.h

     文件      10085  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\smc\smc.h

     文件      12884  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\smc\smc_ecc.c

     文件      37609  2003-10-15 15:35  VC6 UCOS2\ucos_vc\ucos_vc\FS\DEVICE\smc\smc_log.c

............此处省略178个文件信息

评论

共有 条评论