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

📄 rtos.h

📁 很好c语言编写的pid算法,具有很好的参考价值
💻 H
字号:
////////////////////////////////////////////////////////
//	僼傽僀儖偺愢柧丗RTOS 僿僢僟
////////////////////////////////////////////////////////
#ifndef __RTOS_H
#define __RTOS_H

#include "Water.h"
#include "Cup.h"
#include "RealTimeClock.h"

//僨乕僞宆
typedef char			B;
typedef short			H;
typedef long			W;
typedef int				INT;
typedef unsigned char	UB;
typedef unsigned short	UH;
typedef unsigned long	UW;
typedef unsigned int	UINT;

typedef INT				ER;
typedef INT				ID;
typedef	UINT			DLYTIME;

//僄儔乕僐乕僪
#define	E_OK	0

//僞僗僋掕媊僥乕僽儖
typedef struct t_task_definition_table {
	UB	Priority;									//僞僗僋桪愭搙
	UB	StartCondition;								//僞僗僋弶婜忬懺
	void ( *EntryPoint )( INT stacd );				//僞僗僋奐巒傾僪儗僗
	UB	*StackPoint;								//僗僞僢僋傾僪儗僗
} T_TASK_DEFINITION_TABLE;

//僞僗僋掕媊僥乕僽儖偺 StartCondition 偵擖傟傞抣
#define	READY			1							// 幚峴壜擻忬懺
#define	DORMANT			0							// 媥巭忬懺
#define	NON_EXISTENT	0xff						// 枹搊榐

///////////////////////////////////////////////////////
// 僥僗僩偺偨傔偺 #define
//#define POUR_TEST									// 偍搾拲偓僥僗僩帪桳岠偵偡傞
#define TEMP_TEST									// 壏搙惂屼僥僗僩帪桳岠偵偡傞

extern VOID	monitorTempMain( INT StaCd );
extern VOID	poureMain( INT StaCd );
//OS 偺弶婜壔
inline	void rtosEntry()
{

//////////////////////////////////////////////////////
// 壏搙惂屼僥僗僩帪
#ifdef TEMP_TEST
	::monitorTempMain( 0 ); 
#endif
//////////////////////////////////////////////////////
//////////////////////////////////////////////////////
// 偍搾拲偓僥僗僩帪
#ifdef POUR_TEST
	::poureMain( 0 );
#endif
//////////////////////////////////////////////////////
};

//OS 僔僗僥儉僐乕儖掕媊
//僞僗僋娗棟婡擻
inline ER sta_tsk(ID tskid, INT stacd)
{
	return E_OK;
};

inline void ext_tsk()
{
	for(;;);
};

inline ER rel_wai( ID tskid )
{
	return E_OK;
};

inline ER get_tid( ID *p_tskid )
{
	*p_tskid = 1;
	return E_OK;
};

//僞僗僋晅懏摨婜婡擻
inline ER slp_tsk()
{
	return E_OK;
};

inline ER wup_tsk(ID tskid)
{
	return E_OK;
};

//帪娫娗棟婡擻
ER dly_tsk(DLYTIME dlytim);

#endif //__RTOS_H

⌨️ 快捷键说明

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