
#include <DS89C4xx.h> 
#include <stdio.h> 

void send(unsigned char x); 
//void msdelay(unsigned int itime);      <== NOT NEEDED

bit flag = 0; 

//	Interrupt Name Interrupt Vector Interrupt Number
//	External Interrupt 0 0x03 0
//	Timer 0 Overflow 0x0B 1

//void ex0_isr (void) interrupt 1 <== ERROR 

void ex0_isr (void) interrupt 0 
{ 
flag =1 ; 
} 

void main() 
{ 

TMOD = 0x20; 
TH1 = 0xFD; 
SCON0 =0x50; 
TR1=1; 
IE0 = 1;            <==== ADDED
EX0 = 1;            <==== ADDED 
EA = 1;             <==== ADDED 
IT0 = 1;            <==== ADDED 

while(1) 
{ 

if (flag == 1)
{  flag = 0;                    //<== LEFT OUT IN YOUR PROGRAM
   send('A'); 
} 
} 
} 

//	void msdelay(unsigned int itime)      NOT NEEDED
//	{ 
//	signed int i, j; 
//	for (i=0; i<itime; i++) 
//	for(j=0; j<1275; j++); 
//	} 

void send(unsigned char x) 
{ 
SBUF0 = x; 
while (TI_0 = 0); 
TI_0=0; 
} 
 

