资源简介

这是我在proteus上仿真通过的,有两个任务,一个是LED闪烁,一个是BEEP,运行一段时间后,会删除beep任务,仿真可以顺利实现。

资源截图

代码片段和文件信息

/****************************************Copyright (c)**************************************************
**                               广州周立功单片机发展有限公司
**                                     研    究    所
**                                        产品一部 
**
**                                 http://www.zlgmcu.com
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: os_cpu_c.c
**创   建   人: 陈明计
**最后修改日期: 2003年7月8日
**描        述: μCOS-II在lpc210x上的移植代码C语言部分,包括任务堆栈初始化代码和钩子函数等
**              用ads1.2编译,必须使用ARM方式编译
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 陈明计
** 版  本: 1.0
** 日 期: 2003年6月5日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 版  本: 1.1
** 日 期: 2003年6月13日
** 描 述: 增加函数IsrEnIRQ,使函数OSTaskStkInit代码更简洁
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 版  本: 1.2
** 日 期: 2003年6月19日
** 描 述: 增加软中断服务函数
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 版  本: 1.3
** 日 期: 2003年7月8日
** 描 述: 去除不必要的函数IsrEnIRQ
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人: 
** 日 期: 
** 描 述: 
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#define  OS_CPU_GLOBALS
#include “config.h“


/*********************************************************************************************************
** 函数名称: OSTaskStkInit
** 功能描述: 任务堆栈初始化代码,本函数调用失败会使系统崩溃
** 输 入: task  : 任务开始执行的地址
**         pdata :传递给任务的参数
**         ptos  :任务的堆栈开始位置
**         opt   :附加参数,当前版本对于本函数无用,具体意义参见OSTaskCreateExt()的opt参数
** 输 出: 栈顶指针位置
** 全局变量:
** 调用模块: 
**
** 作 者: 陈明计
** 日 期: 2003年6月5日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陈明计
** 日 期: 2003年6月13日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

        OS_STK *OSTaskStkInit (void (*task)(void *pd) void *pdata OS_STK *ptos INT16U opt)
{
    OS_STK *stk;

    opt    = opt;                           /* ‘opt‘  没有使用。作用是避免编译器警告    */
    stk    = ptos;                          /* 获取堆栈指针                                       */

                                            /* 建立任务环境,ADS1.2使用满递减堆栈       */
    *stk = (OS_STK) task;                   /*  pc  */
    *--stk = (OS_STK) task;                 /*  lr  */

    *--stk = 0;                             /*  r12  */
 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\ARM\
     文件        3887  2004-08-27 15:09  UCOS-GPIO删除任务实验\ARM\IRQ.inc
     文件        5650  2003-07-08 17:04  UCOS-GPIO删除任务实验\ARM\OS_CPU.H
     文件        9932  2003-10-11 09:10  UCOS-GPIO删除任务实验\ARM\Os_cpu_a.s
     文件       16355  2005-02-18 18:18  UCOS-GPIO删除任务实验\ARM\Os_cpu_c.c
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\Arm_Pc\
     文件       28918  2003-07-21 10:37  UCOS-GPIO删除任务实验\Arm_Pc\PC.C
     文件        3492  2003-06-17 16:57  UCOS-GPIO删除任务实验\Arm_Pc\PC.H
     文件         606  2003-06-25 14:22  UCOS-GPIO删除任务实验\Arm_Pc\README.txt
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\GPIO_LED1\
     文件      131857  2011-11-03 13:07  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1.mcp
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\
     文件        3467  2011-11-03 13:07  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\CWSettingsWindows.stg
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\
     文件       98924  2011-11-03 13:04  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\GPIO_Led1.axf
     目录           0  2011-11-03 10:38  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\
     文件        2262  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\IRQ.o
     文件       49644  2011-11-03 13:04  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\main.o
     文件       30644  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_core.o
     文件        2514  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_cpu_a.o
     文件       50144  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_cpu_c.o
     文件       28792  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_flag.o
     文件       22956  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_mbox.o
     文件       19980  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_mem.o
     文件       23596  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_mutex.o
     文件       26288  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_q.o
     文件       21524  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_sem.o
     文件       27296  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_task.o
     文件       19680  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Os_time.o
     文件        3215  2011-11-02 21:47  UCOS-GPIO删除任务实验\GPIO_LED1\GPIO_Led1_Data\Release\objectCode\Startup.o
............此处省略33个文件信息

评论

共有 条评论