os_cpu_c.c

来自「UCOS在凌阳16位单片机SPCE061A上的移植的源码」· C语言 代码 · 共 89 行

C
89
字号
//******************************************************************
//                       单位: 华中科技大学光电子工程系
//                       作者: 张利
//                       文件: OS_CPU_C.c   for  unsp
//******************************************************************

#define  OS_CPU_GLOBALS
#include "includes.h"

/*******************************************************************
                
                            堆栈初始化函数
                  该函数在创建任务时调用,用于对个寄存器初始化
             
********************************************************************/
void *OSTaskStkInit(void (*task)(void *pd), void *pdata, void *ptos, INT16U opt)
{
	OS_STK* stk;
	stk=(OS_STK*)ptos;
	*stk++=0x0007;              /*堆栈的长度*/
    *stk++=*((INT16U*)task+1);          /* pc */ 
	*stk++=0x0000;		         /* SR  */
	*stk++=0x0000;        /* R5  */
	*stk++=0x0000;        /* R4  */
	*stk++=0x0000;        /* R3  */
	*stk++=0x0000;        /* R2  */
	*stk++=0x0000;        /* R1  */
	return (void*)ptos;
}

//************************************************************************

#if OS_CPU_HOOKS_EN

/***************************************************************************

                               任务切换挂钩函数
                 注意:任务创建时调用,调用期间中断需被禁止
                 
********************************************************************************/

void OSTaskSwHook (void)
{
}

/***************************************************************************

                               任务创建挂钩函数
                     注意:任务创建时调用,调用期间中断需被禁止
                 
********************************************************************************/
void OSTaskCreateHook (OS_TCB *ptcb)
{
    ptcb = ptcb;
}
/*******************************************************************************

                               任务删除钩挂函数
                               
********************************************************************************/

void OSTaskDelHook (OS_TCB *ptcb)
{
    ptcb = ptcb;                       
}

/*******************************************************************************

                               任务切换钩挂函数
                               
********************************************************************************/

void OSTaskStatHook (void)
{
}

/*******************************************************************************
                     
                                定时钩挂函数
                            
********************************************************************************/

void OSTimeTickHook (void)
{
}

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?