*******************************************************************************/
#include "..\DEBUG.C" //调试信息打印
#include "..\DEBUG.H"
UINT8 DAT,FLAG;
/*******************************************************************************
* Function Name : CH559UART0InterruptInit()
* Description : CH559UART0中断初始化
* Input : None
* Output : None
* Return : None
*******************************************************************************/
void CH559UART0InterruptInit()
{
ES = 1; //开启UART0中断
EA = 1; //总中断开启
}
/*******************************************************************************
* Function Name : CH559UART0Interrupt()
* Description : CH559UART0中断处理函数
*******************************************************************************/
void CH559UART0Interrupt( ) interrupt INT_NO_UART0 using 1 //看门狗中断服务程序,使用寄存器组1
{
if(TI)
{
TI = 0; //清空发送中断
}
if(RI)
{
RI = 0; //清空接收中断
DAT = SBUF;
SBUF =DAT ;
while(!TI) ;
TI=0;
}
}
main( )
{
SM0 = 0;
SM1 = 1; //串口0使用模式1
SM2 = 0;
TMOD=0x20; //使用Timer1作为波特率发生器
PCON |= SMOD;
T2MOD |=0xa0;///波特率57.6k
TH1 = 0xf3;
TR1 = 1; //启动定时器1
REN = 1;
CH559UART0InterruptInit();
SBUF ='C';
while(!TI) ;
TI=0;
SBUF ='H';
while(!TI) ;
TI=0;
SBUF = '5';
while(!TI) ;
TI=0;
SBUF = '5';
while(!TI) ;
TI=0;
SBUF = '9';
while(!TI) ;
TI=0;
SBUF = '5';
while(!TI) ;
TI=0;
SBUF = 0x0d;
while(!TI) ;
TI=0;
SBUF = 0x0a;
while(!TI) ;
TI=0;
while(1)
{
}
}
|