#define uchar unsigned char
uchar a,flag
void main()
{
TMOD=0x20//设置定时器1 为模式2
TH1=0xfd//装初值设定波特率
TL1=0xfd
TR1=1//启动定时器
SM0=0//串口通信模式设置
SM1=1
REN=1//串口允许接收数据
EA=1//开总中断
ES=1//开串行中断
while(1)
{
if(flag==1) //如果有数据则进入这个语句
{
ES=0//进入发送数据时先关闭串行中断
flag=0
SBUF=a//将数据原样发回
while(!TI)//等待数据发完
TI=0
ES=1//退出进再开串行中断
}
}
}
void serial() interrupt 4 //串行中断函数
{
P1=SBUF//将数据发送给P1 口显示(测试用)
a=SBUF//收取数据
flag=1//标志置位
RI=0
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)