📄 serio.lst
字号:
C51 COMPILER V7.50 SERIO 09/26/2007 17:19:06 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE SERIO
OBJECT MODULE PLACED IN serio.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE serio.c LARGE BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "mylib.h"
2 uchar idata buf_data[4];
3 uchar sum;
4 uint countdat=0;
5 extern uchar Baudrate,choice1;
6 extern uint Ch1k,Ch2k;
7 //bit Send_suessful=0;
8 /*发送程序*/
9 /*void send()
10 {
11 uchar i;
12 SetSerio=1;
13 if(ChoiceSend==0)
14 {
15 do{
16 SBUF=0xAA; //发送联络信号“AA”踏力
17 //while(TI==0); //等待发送结束
18 while(TI==0)
19 {
20 countdat++;
21 if(countdat==30)
22 {
23 lcd_clr();
24 dprintf(10,0,"数据发送失败",1);
25 }
26 }
27 TI=0; //软件清0
28 while(RI==0); //等待B机回答
29 RI=0;
30 }while((SBUF^0xAB)!=0); //B机未准备好,继续联络
31 }
32 if(ChoiceSend==1)
33 {
34 do
35 {
36 SBUF=0xCC; //发送联络信号“CC”踏力
37 // while(TI==0); //等待发送结束
38 while(TI==0)
39 {
40 countdat++;
41 if(countdat==30)
42 {
43 lcd_clr();
44 dprintf(10,0,"数据发送失败",1);
45 }
46 }
47 TI=0; //软件清0
48 while(RI==0); //等待B机回答
49 RI=0;
50 }while((SBUF^0xCD)!=0); //B机未准备好,继续联络
51 }
52 if(ChoiceSend==2)
53 {
54 do
55 {
C51 COMPILER V7.50 SERIO 09/26/2007 17:19:06 PAGE 2
56 SBUF=0xEE; //发送联络信号“EE”踏力
57 //while(TI==0); //等待发送结束
58 while(TI==0)
59 {
60 countdat++;
61 if(countdat==30)
62 {
63 lcd_clr();
64 dprintf(10,0,"数据发送失败",1);
65 }
66 }
67 TI=0; //软件清0
68 while(RI==0); //等待B机回答
69 RI=0;
70 }while((SBUF^0xEF)!=0); //B机未准备好,继续联络
71 }
72 if(ChoiceSend==3)
73 {
74 do
75 {
76 SBUF=0xAC; //发送联络信号“AC”踏力
77 //while(TI==0); //等待发送结束
78 while(TI==0)
79 {
80 countdat++;
81 if(countdat==30)
82 {
83 lcd_clr();
84 dprintf(10,0,"数据发送失败",1);
85 }
86 }
87 TI=0; //软件清0
88 while(RI==0); //等待B机回答
89 RI=0;
90 }while((SBUF^0xCF)!=0); //B机未准备好,继续联络
91 }
92 do{
93 sum=0; //清较验和
94 for(i=0;i<4;i++)
95 {
96 SBUF=buf_data[i]; //发送数据
97 sum+=buf_data[i]; //求较验和
98 while(TI==0); //等待发送是否完成
99 TI=0;
100 }
101 SBUF=sum; //发送校验和
102 while(TI==0);
103 TI=0;
104 while(RI==0);
105 RI=0;
106 }while(SBUF==0xff);
107 Led=1;
108 // SetSerio=0;
109 } */
110
111 void init_serial(void)
112 {
113 1 SCON=0x50; /*定时器1,模式样,8BIT UART */
114 1 TMOD=0x20; /*BAUND 9600 FOSCE=11.0592 */
115 1 TH1=0xf4;
116 1 TL1=0xf4;
117 1 PCON=0x00;
C51 COMPILER V7.50 SERIO 09/26/2007 17:19:06 PAGE 3
118 1 EA=0;
119 1 ES=1;
120 1 PS=1;
121 1 TR1=1;
122 1 AUXR=0x01; //允许使用STC59C58RD内部扩展的1KRAM。
123 1 }
124 void send_string_com(unsigned char *str,unsigned int strlen)
125 {
126 1 unsigned int k=0;
127 1 do
128 1 {
129 2 send_char(*(str + k));
130 2
131 2 k++;
132 2 } while(k < strlen);
133 1 }
134
135 void send_string_com1(unsigned char *str,unsigned int strlen)
136 {
137 1 unsigned int k=0;
138 1 do
139 1 {
140 2 send_char(*(str + k));
141 2
142 2 k++;
143 2 } while(k < strlen);
144 1 }
145
146 void send_char(unsigned char ch)
147 {
148 1 TI=0;
149 1 SBUF=ch;
150 1 while(TI==0);
151 1 TI=0;
152 1 }
153
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 198 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 3 14
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = 4 ----
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 + -