www.pudn.com > uCOSII上实现的tcpip.rar > zarch.h


#ifndef	_ZARCH_H_
#define _ZARCH_H_

#include 
#include 

#ifdef  GLOBAL_DEFINE
#define EXTERN
#else
#define EXTERN extern
#include "../../ucos/bseppc.h"
#include "../../ucos/uCOS_II.h"
#endif

#define ZSTATS	1
#define ZNET_DEBUG 	1

typedef unsigned char 	u8_t;
typedef signed char 	s8_t;
typedef unsigned short 	u16_t;
typedef signed short 	s16_t;
typedef unsigned int 	u32_t;
typedef signed int		s32_t;

typedef INT8U           task_t;
typedef INT32U          sys_time_t;
typedef OS_EVENT*       sys_sem_t;


#define STRUCT_BEGIN #pragma pack(1)
#define STRUCT_END #pragma pack(4)
#define MEM_ALIGNMENT   4
#define MEM_ALIGN_SIZE(size) (size + ((((size) % MEM_ALIGNMENT) == 0)? 0 :(MEM_ALIGNMENT - ((size) % MEM_ALIGNMENT))))


#define sys_enter_critical()	OS_ENTER_CRITICAL()
#define sys_exit_critical()		OS_EXIT_CRITICAL()


extern sys_time_t sys_get_time(void);
extern sys_sem_t   sys_new_sem(u8_t value);
extern u8_t        sys_signal_sem(sys_sem_t sem);
extern void        sys_wait_sem(sys_sem_t sem, u16_t timeout, u8_t *err);
extern void 	   sys_reset_sem(sys_sem_t sem, u8_t value);
extern task_t      sys_current_task(void);
extern void        sys_delay(u16_t dtime);

#define 	sys_sleep(tid)	OSTaskSuspend((tid))
#define		sys_wackup(tid)	OSTaskResume((tid))


#endif