⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 os_cpu.h

📁 《嵌入式网络系统设计-基于Atmel ARM7 系列》这个本书的光盘资料
💻 H
字号:
//*------------------------------------------------------------------------------------------------
//* 文件名			   : os_cpu.h
//* 功能描述		   : 与处理器相关的常量、数据类型、宏定义
//* 作者    		   : 焦海波
//* 版本			   : 0.1
//* 建立日期、时间	   : 2007/04/26 09:42
//* 最近修改日期、时间 : 
//* 修改原因		   : 
//*------------------------------------------------------------------------------------------------

#ifndef	OS_CPU_H
#define	OS_CPU_H

#ifdef OS_CPU_GLOBALS 
	#define OS_CPU_EXT 
#else 
	#define OS_CPU_EXT extern 
#endif

//*---------------------------------------- 数据类型定义 -----------------------------------------
typedef	unsigned 	char 	BOOLEAN;
typedef unsigned 	char 	INT8U;
typedef signed 		char 	INT8S;
typedef unsigned	short 	INT16U;
typedef signed 		short 	INT16S;
typedef unsigned 	int 	INT32U;
typedef signed 		int 	INT32S;
typedef float 				FP32;
typedef double 				FP64;

typedef unsigned 	int 	OS_STK;
typedef unsigned 	int 	OS_CPU_SR;

//*---------------------------------------- 常量、变量及宏定义 -----------------------------------
#define	OS_CRITICAL_METHOD			3

#if      OS_CRITICAL_METHOD == 3
    #define	OS_ENTER_CRITICAL()		(cpu_sr = ARMCoreDisableIntExt());
    #define	OS_EXIT_CRITICAL()		(ARMCoreRestoreIntStatus(cpu_sr));
#endif

//* 堆栈增长方向
#define	OS_STK_GROWTH				1

#define	OS_TASK_SW()				OSCtxSw()

//* 任务切换标志变量
OS_CPU_EXT BOOLEAN		blIsNeedCtxSw;

//*-------------------------------------------- 原型声明 -----------------------------------------
extern void OSTickISR(void);                //* 内核调度中断ISR
extern void OSCtxSw(void);
extern void OSIntCtxSw(void);
extern void OSStartHighRdy(void);

#if      OS_CRITICAL_METHOD == 3
	extern OS_CPU_SR ARMCoreDisableIntExt(void);
	extern void ARMCoreRestoreIntStatus(OS_CPU_SR cpu_sr);
#endif


#endif

⌨️ 快捷键说明

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