📄 os_cpu.c
字号:
#define OS_CPU_GLOBALS
#include "includes.h"
/*
**********************************************************
初始化任务堆栈
**********************************************************
*/
void *SOTaskStkInit(void(*task)(void *pd),void *ppdata,void *ptos,INT16U opt) reentrant
{
OS_STK *stk;
ppdata =ppdata;
opt =opt;
stk =(OS_STK*)ptos;
*stk++ =15;
*stk++ =(INT16U)task&0xff;
*stk++ =(INT16U)task>>8;
*stk++ =0x00;
*stk++ =0x0a;
*stk++ =0x0b;
*stk++ =0x00;
*stk++ =0x00;
*stk++ =0x00;
*stk++ =0x01;
*stk++ =0x02;
*stk++ =0x03;
*stk++ =0x04;
*stk++ =0x05;
*stk++ =0x06;
*stk++ =0x07;
*stk++ =(INT16U)(ptos+MaxStkSize)>>8;
*stk++ =(INT16U)(ptos+MaxStkSize)&0xff;
return ((void *)ptos);
}
if OS_CPU_HOOKS_EN
/*
**************************************************
任务创建勾挂函数
**************************************************
*/
void OSTaskCreateHook(OS_TCB *ptcb) reentrant
{
ptcb=ptcb;
}
/*
**************************************************
任务删除勾挂函数
**************************************************
*/
void OSTaskDelHook(OS_TCB *ptcb) reentrant
{
ptcb=ptcb;
}
/*
**************************************************
任务切换勾挂函数
**************************************************
*/
void OSTaskSwHook(void) reentrant
{
}
/*
**************************************************
统计任务勾挂函数
**************************************************
*/
void OSTaskStatHook(void) reentrant
{
}
/*
**************************************************
定时勾挂函数
**************************************************
*/
void OSTimeTickHook(void) reentrant
{
}
/*
**************************************************
初始化定时器 0
**************************************************
*/
void InitTime0(void) reentrant
{
TMOD=TMOD&0XF0;
TMO=TMOD|0X01;
TH0=0X70;
TL0=0X00;
ET0=1;
TR0=1;
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -