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

📄 os_cpu.h

📁 一个简单易用的可裁减的小型实时操作系统 移植非常简单
💻 H
字号:
/*
 *******************************************************************************
 *
 * MicroROS
 *
 * Copyright (C) 2007 <amwox@163.com>			
 *
 * Description	: 在OS内核使用的全局变量,函数以及与移植相关的函数
 *
 * File			: os_config.h
 * Author		: amwox
 * Edition		: V0.01
 * History		: 2007-10-29  created 
 *				  2008-01-01  只保留汇编中的_TaskSwitch,其它删除
 *******************************************************************************
 */
#ifndef __OS_CPU_A_H__
#define __OS_CPU_A_H__

/*
*******************************************************************************
* 内核全局变量
*******************************************************************************
*/

extern KernelData os_kernel;

/*
*******************************************************************************
* 内核函数
*******************************************************************************
*/

/* ***************************** os_tasking.c ****************************** */ 
#if (SEMAPHORE_EN > 0) || (MAILBOX_EN > 0) || (MUTEX_EN > 0)
void _AppendEvent(pPID *pList, pPID pEvent);
BOOL _RemoveEvent(pPID *pList, pPID pEvent);
void _WakeupEvent(pPID pList);
#endif
BOOL _RemovePID(pPID pProcess);
void _QueuePID(pPID pProcess);

/* ****************************** os_timer.c ******************************* */

BOOL _RemoveTimer(pPID pTimer);
void _QueueTimer(pPID pTimer);

/*
*******************************************************************************
* 与移植相关的函数
*******************************************************************************
*/

/* ****************************** os_cpu_c.c ******************************* */

void _SaveSP(STACK * Y);
STACK * _RestoreSP(void); 
STACK * OS_TaskInit(void  (* pTaskName) (void),STACK * pStack);
void OS_KernelInit(void);

/* ***************************** os_cpu_a.asm ****************************** */ 
//这个函数只能在汇编中,在C中编写会出现高级优化时,出现不正确的编译结果
extern void _TaskSwitch(void);
#define _Schedule()		_TaskSwitch()

#endif

⌨️ 快捷键说明

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