📄 点对点通信 (从单片机).lst
字号:
C51 COMPILER V7.09 点对点蚠信__从单片籣_ 05/24/2008 00:22:24 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE 点对点蚠信__从单片籣_
OBJECT MODULE PLACED IN 点对点通信 (从单片机).OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE 点对点通信 (从单片机).c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg51.h>
2 unsigned char data Rdata[10];
3 unsigned char data cnt=0,sum=0,CM;
4 unsigned char data linksignal,resendsignal;
5
6 void delay1s(void)
7 {
8 1 unsigned char i,j,k;
9 1 for(k=100;k>0;k--)
10 1 for(i=20;i>0;i--)
11 1 for(j=248;j>0;j--);
12 1 }
13
14 void main(void)
15 {
16 1 TH1=0xf4;
17 1 TL1=0xf4;
18 1 EA=0;
19 1 TR1=1;
20 1 TMOD=0x20;
21 1 PCON=0x00;
22 1 SCON=0x50;
23 1 //等待从单片机联系信号0xE0,并返回应答信号0xE1
24 1 do
25 1 {
26 2 while(RI==0);
27 2 RI=0;
28 2 linksignal=SBUF;
29 2 }
30 1 while(linksignal!=0xE0);
31 1 SBUF=0xE1;
32 1 while(TI==0);
33 1 TI=0;
34 1 //从单片机接收数据,并验证校验和
35 1 do
36 1 {
37 2 do
38 2 {
39 3 while(RI==0);
40 3 RI=0;
41 3 Rdata[cnt]=SBUF;
42 3 sum=sum+Rdata[cnt];
43 3 cnt++;
44 3 }
45 2 while(cnt<10);
46 2
47 2 while(RI==0);
48 2 RI=0;
49 2 CM=SBUF;
50 2
51 2 if(sum!=CM)
52 2 {
53 3 resendsignal=1;
54 3 }
55 2 else
C51 COMPILER V7.09 点对点蚠信__从单片籣_ 05/24/2008 00:22:24 PAGE 2
56 2 {
57 3 resendsignal=0;
58 3 }
59 2
60 2 SBUF=resendsignal;
61 2 while(TI==0);
62 2 TI=0;
63 2
64 2 if(resendsignal==1)
65 2 {
66 3 sum=0;
67 3 cnt=0;
68 3 }
69 2 }
70 1 while(resendsignal==1);
71 1 while(1)
72 1 {
73 2 for(cnt=0;cnt<10;cnt++)
74 2 {
75 3 P2=Rdata[cnt];
76 3 delay1s();
77 3 }
78 2 }
79 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 155 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 15 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -