📄 接收校验.c
字号:
#include <reg51.h>
#define uchar unsigned char
uchar rr[8],flag=0;
sbit p17=P1^7;
void Send(uchar Reply )
{
ES=0; /* 关发送中断 */
p17=1; /* p17=1 发送使能 */
SBUF=Reply; /* 发送应答信号 */
while(TI==0);
TI=0;
p17=0; /* 接受使能 */
ES=1;
}
void Receive()interrupt 4
{ uchar i;
if(SBUF==0xff&&flag==0)
{flag=1;
Send(0x00); /*发送应答信号 0 准备完毕*/
}
else{ if(flag==1) /*flag==1接收开始*/
{ for(i=0;i<8;i++)
{ rr[i]=SBUF; /*保存数据*/
while(RI==0);
RI=0; }
flag=0; } /* flag=0 接收结束*/
}
}
main()
{
TMOD=0x20;
SCON=0x50;
TH1=0xfd; /* 波特率9600 */
TL1=0Xfd;
TR1=1; /* 开中断*/
EA=1;
ES=1;
p17=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -