OS_CPU.H
资源名称:rtos51.rar [点击查看]
上传用户:aolinlc
上传日期:2014-01-01
资源大小:591k
文件大小:2k
源码类别:
单片机开发
开发平台:
C/C++
- /*********************************************************************************************************
- ** 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
English
