www.pudn.com > 8051_pppsrc.zip > NOTATION.H, change:2001-01-26,size:1216b


#ifndef __NOTATION_H 
#define __NOTATION_H	1 
 
#define BIG_ENDIAN 
 
#if defined(BIG_ENDIAN) 
 
#define htons(A)	(A) 
#define htonl(A)	(A) 
#define ntohs(A)	(A) 
#define ntohl(A)	(A) 
 
#elif defined(LITTLE_ENDIAN) 
 
#define htons(A)	((((A) & 0xFF00) >> 8) | \ 
			 (((A) & 0x00FF) < 8)) 
 
#define htonl(A)	((((A) & 0xFF000000) >> 24) | \ 
			 (((A) & 0x00FF0000) >> 8) | \ 
			 (((A) & 0x0000FF00) < 8) | \ 
			 (((A) & 0x000000FF) < 24)) 
 
#define ntohs	htons 
#define ntohl	htohl 
 
#else 
 
#error "User Must define LITTLE_ENDIAN or BIG_ENDIAN!!!" 
 
#endif 
 
 
#define DWORD unsigned long 
#define BYTE unsigned char 
#define WORD unsigned int 
 
#define False 0 
#define True  1 
 
typedef void (*EventProc)(BYTE c); 
 
typedef struct { 
	unsigned char	b0; 
	unsigned char	b1; 
	unsigned char	b2; 
	unsigned char	b3; 
	unsigned char	b4; 
	unsigned char	b5; 
	unsigned char	b6; 
	unsigned char	b7; 
} TByteBits; 
 
typedef union { 
	unsigned char	Value; 
	TByteBits	Bits; 
} TByte; 
 
#define AppLoop	while(1) 
 
#define	EnableInterrupts	_asm("CLI\n");  //Enable interrupts 
#define DisableInterrupts	_asm("SEI\n");  //Enable interrupts 
#define NoOperation		_asm("NOP\n");	// No operation  
	 
#endif