点对点通信(主单片机).c
来自「在keilc和proteus下进行点对点通信的开发模拟」· C语言 代码 · 共 56 行
C
56 行
#include<reg51.h>
unsigned char data Tdata[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char data cnt=0,sum=0;
unsigned char data linksignal,resendsignal;
void main(void)
{
TH1=0xf4;
TL1=0xf4;
EA=0;
TR1=1;
TMOD=0x20;
PCON=0x00;
SCON=0x50;
//向从单片机发送联系信号0xE0,并且等待从单片机应答信号0xE1
do
{
SBUF=0xE0;
while(TI==0);
TI=0;
while(RI==0);
RI=0;
linksignal=SBUF;
}
while(linksignal!=0xE1);
//向从单片机发送数据和校验和
do
{
do
{
SBUF=Tdata[cnt];
while(TI==0);
TI=0;
sum=sum+Tdata[cnt];
cnt++;
}
while(cnt<10);
SBUF=sum;
while(TI==0);
TI=0;
while(RI==0);
RI=0;
resendsignal=SBUF;
if(resendsignal==1)
{
sum=0;
cnt=0;
}
}
while(resendsignal==1);
while(1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?