www.pudn.com > remotepro.rar > interrput.c


/* 
********************************************************************************* 
********************************************************************************* 
*/ 
#pragma sfr 
#pragma di 
#pragma ei 
#pragma NOP 
#pragma HALT 
#pragma STOP 
#pragma	interrupt	INTP6	EXT_INTP6 
#ifndef UINT8 unsigned char 
#define UINT8 unsigned char 
#endif 
#ifndef UINT16 unsigned int 
#define UINT16 unsigned int 
#endif 
extern void vIrRecv(); 
/* 
********************************************************************************* 
function:variable  define 
********************************************************************************* 
*/ 
UINT16 Remote_count=0; 
/* 
********************************************************************************* 
********************************************************************************* 
*/ 
void interrupt_init(void) 
{ 
	EGP = 0x00;     
	EGN = 0x40;    
	PM14.0=1;        /*INTP6*/ 
	PPR6 = 1; 
	PIF6 = 0; 
	PMK6 = 0; 
	PU14.0=1;	 
} 
/* 
********************************************************************************* 
function:REMOTE process  
********************************************************************************* 
*/ 
__interrupt void EXT_INTP6( void ) 
{ 
	DI(); 
	vIrRecv(); 
	Remote_count=0; 
	P12.0=1; 
	EI(); 
}