{

SendOneByte(str2[i++]);

}

SendrStr(str1);

while(1);

}

/****************中断服务函数***************/

voidUART_ISR(void)interrupt4

{

uint8RX_Data;

//只响应“接收”中断,“发送”中断来了就直接抹掉

if(RI)

{

RI=0;//串口中断标志不能自己清除,需要手动清除

RX_Data=SBUF;

SendOneByte(RX_Data);

}

else

TI=0;//串口发中断是发送完缓冲区数据之后产生

}

/****************串口初始化函数*************/

voidInitUART(void)

{

TMOD=0x20;

SCON=0x50;

TH1=TC_VAL;

TL1=TH1;

PCON=0x80;//发送速率加倍

ES=1;

EA=1;

TR1=1;

}

/**************串口发送字符函数*************/

voidSendOneByte(uint8c)

{

ES=0;//禁止发送中断

SBUF=c;

while(!TI);

TI=0;

ES=1;

}

/**************串口发送字符串函数*************/

voidSendrStr(constuint8*ptr)

{

do

{

SendOneByte(*ptr);

}while(*ptr++!=‘’);

}

责任编辑;zl

关于控制,MCU就介绍完了,您有什么想法可以联系小编。