os_cpu.h

来自「无需外扩ram即可在51上执行的占先式RTOS 可移植,完全免费,公开源代码 具」· C头文件 代码 · 共 64 行

H
64
字号
/*********************************************************************************************************
**				                               Small RTOS 51
**                                   The Real-Time Kernel For Keil c51
**
**                                  (c) Copyright 2002-2002, chenmingji
**                                           All Rights Reserved
**
**                                                  V1.00
**
**
** 文件名: OS_CPU.h
** 创建人: 陈明计
** 日 期: 2002年6月20日
** 描 述: Small RTOS 51与CPU(既8051系列)相关的C语言头文件,定义一些与CPU相关的宏.
**
**------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

#define EN_SP2        0                         /* 禁止(0)或允许(1)软非屏蔽中断               */

#ifdef __C51__

#if EN_OS_INT_ENTER >0 
#define  OS_INT_ENTER() OSIntNesting++,EA=1
#endif

#define  OS_ENTER_CRITICAL()  EA = 0            /* 禁止中断                                     */
#define  OS_EXIT_CRITICAL()   EA = 1            /* 允许中断                                     */

#define  HIGH_BYTE  0                           /* int的高位字节                                 */
#define  LOW_BYTE   1                           /* int的低位字节                                 */

#define  OS_TASK_SW()         OSCtxSw()         /* 任务切换函数                                  */


#define  IDATA_RAM_SIZE  0x100                  /* idata大小                                    */

extern void OSCtxSw(void);
extern void OSIntCtxSw(void);
#ifndef IN_OS_CPU_C
extern void OSStart(void);
#endif

#define  Sp2Space       4                       /* 高级中断(软非屏蔽中断)堆栈大小 EN_SP2为0时无效*/

#define OS_TIME_ISR     1                       /* 系统定时器使用的中断                                       */

#endif



#ifndef __C51__

SET_EA   MACRO                                 ;打开所有允许中断
             SETB     EA
         ENDM
         
#endif

⌨️ 快捷键说明

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