📄 text1.lst
字号:
135 /*----输入电话号码----*/
136 void in_data()
137 {uchar g;
138 1 P1=0xb6;delay(1); /*数码管显示"三"*/
139 1 if(P3_5==0)
*** ERROR C202 IN LINE 139 OF TEXT1.C: 'P3_5': undefined identifier
140 1 {delay(10);if(P3_5==0)
*** ERROR C202 IN LINE 140 OF TEXT1.C: 'P3_5': undefined identifier
141 2 {P1=0x7f;m=0;data_flag=0; /*按下OK键确认并点亮小数点*/
142 3 for(g=0;g<20;g++){DATA[g]=10;}
143 3 delay(500); /*同时DATA数组中全部写入10*/
144 3 while(1)
145 3 {
146 4 if(P3_4==0){delay(10); /*按下UP键数码管作0-9递增显示*/
*** ERROR C202 IN LINE 146 OF TEXT1.C: 'P3_4': undefined identifier
147 5 if(P3_4==0){m++;if(m==10)m=0;P1=DATA_7SEG[m];delay(300);}
*** ERROR C202 IN LINE 147 OF TEXT1.C: 'P3_4': undefined identifier
148 5 }
149 4 P1=DATA_7SEG[m];delay(1);/*若不按下UP键数码管也作0-9显示*/
150 4 if(P3_5==0)
*** ERROR C202 IN LINE 150 OF TEXT1.C: 'P3_5': undefined identifier
151 4 {delay(10);
152 5 if(P3_5==0) /*按下OK键显示的数据(号码)存入数组DATA中*/
*** ERROR C202 IN LINE 152 OF TEXT1.C: 'P3_5': undefined identifier
153 5 {DATA[data_flag]=m;data_flag++;P1=0x7f;delay(500);}
154 5 } /*按下OK键超过2秒则退出向数组DATA送入号码*/
155 4 if(P3_5==0){delay(2000);if(P3_5==0)break;}
C51 COMPILER V7.20 TEXT1 09/02/2007 23:08:36 PAGE 4
*** ERROR C202 IN LINE 155 OF TEXT1.C: 'P3_5': undefined identifier
*** ERROR C202 IN LINE 155 OF TEXT1.C: 'P3_5': undefined identifier
156 4 }
157 3 }
158 2 } /*数码管显示"三"*/
159 1 F1:if(P3_5==0){delay(10);if(P3_5==0){P1=0xb6;delay(1);goto F1;}}
*** ERROR C202 IN LINE 159 OF TEXT1.C: 'P3_5': undefined identifier
*** ERROR C202 IN LINE 159 OF TEXT1.C: 'P3_5': undefined identifier
160 1 }
161 /***********************************************************************/
162 /*---启动报警器进入警戒工作---*/
163 void work()
164 { uchar h;
165 1 P1=0xdf; /*数码管左上角显示"1"*/
166 1 delay(1);
167 1 if(set==1) /*进入时间1循环*/
168 1 {while(cnt_1<=X[0]*100+X[1]*10+X[2])
169 2 {
170 3 delay(1000);
171 3 cnt_1++; /*计数器cnt_1累加*/
172 3 if(set!=1){EX1=0;cnt_1=0;break;}
173 3 } /*如按下Set键,则退出此循环*/
174 2 }
175 1 else {EX1=0;PCON=0x00;}/*Set不为1,则关闭外中断1,退出待机状态*/
176 1 if(set==1)
177 1 {if(cnt_1>=X[0]*100+X[1]*10+X[2])
178 2 {EX1=1;cnt_1=0;} /*时间1到,打开外中断1,计数器归零*/
179 2 /*进入待机。若有1秒以上开关动作,退出待机*/
180 2 while(1)
181 2 {PCON=0x01;if(f>=5){PCON=0x00;break;}}
182 2 }
183 1 /*-----------------------------------------------------*/
184 1 EX1=0; /*关闭外中断1*/
185 1 if(set==1) /*进入时间2循环*/
186 1 {while(cnt_2<=Y[0]*100+Y[1]*10+Y[2])
187 2 {
188 3 delay(1000);
189 3 cnt_2++; /*计数器cnt_2累加*/
190 3 if(set!=1){cnt_2=0;break;}
191 3 } /*如按下Set键,则退出此循环*/
192 2 }
193 1 if(set==1)
194 1 {
195 2 bh(); /*时间2到,调用拨号子程序*/
196 2 delay(3000);
197 2 P3_7=0;//控制输出端为低
*** ERROR C202 IN LINE 197 OF TEXT1.C: 'P3_7': undefined identifier
198 2 for(h=0;h<60;h++) /*发出60秒警音*/
199 2 { for(f=0;f<500;f++)
200 3 {f++;
201 4 P3_1=!P3_1;P1=0x5f;
*** ERROR C202 IN LINE 201 OF TEXT1.C: 'P3_1': undefined identifier
202 4 delay(1);
203 4 }
204 3 P3_1=0;P1=0x7f;delay(500);
*** ERROR C202 IN LINE 204 OF TEXT1.C: 'P3_1': undefined identifier
205 3 }
206 2 P3_7=1;//控制输出端恢复高
*** ERROR C202 IN LINE 206 OF TEXT1.C: 'P3_7': undefined identifier
207 2 cnt_1=0;cnt_2=0; /*有关计数器、端口回到初始状态*/
208 2 P3_0=0;P3_1=0;P1_7=1;
*** ERROR C202 IN LINE 208 OF TEXT1.C: 'P3_0': undefined identifier
C51 COMPILER V7.20 TEXT1 09/02/2007 23:08:36 PAGE 5
*** ERROR C202 IN LINE 208 OF TEXT1.C: 'P3_1': undefined identifier
*** ERROR C202 IN LINE 208 OF TEXT1.C: 'P1_7': undefined identifier
209 2 for(f=0;f<3;f++)delay(60000);/*关闭3分钟,以便进行电话报警*/
210 2 }
211 1 }
212 /********************************************************************/
213 /*---拨号---*/
214 void bh()
215 {data_flag=0; /*电话号码计数器(二十位)归零*/
216 1 P3_0=1; /*接通线路*/
*** ERROR C202 IN LINE 216 OF TEXT1.C: 'P3_0': undefined identifier
217 1 P1_7=0; /*数码管小数点亮*/
*** ERROR C202 IN LINE 217 OF TEXT1.C: 'P1_7': undefined identifier
218 1 delay(1000);
219 1 while(DATA[data_flag]<10) /*号码小于10进入循环拨号状态*/
220 1 {
221 2 if(DATA[data_flag]==0) /*若号码为0*/
222 2 {TR0=1; /*启动T0定时器*/
223 3 if(n==20){data_flag++; /*进行20次中断,产生10个脉冲*/
224 4 n=0;TR0=0;
225 4 P3_0=1;P1_7=0;
*** ERROR C202 IN LINE 225 OF TEXT1.C: 'P3_0': undefined identifier
*** ERROR C202 IN LINE 225 OF TEXT1.C: 'P1_7': undefined identifier
226 4 delay(500);
227 4 }
228 3 }
229 2
230 2 if(DATA[data_flag]>0) /*若号码>0*/
231 2 {TR0=1; /*启动T0定时器*/
232 3 if(n==((DATA[data_flag])*2))/*进行号码x2次中断,产生号码个脉冲*/
233 3 {data_flag++;
234 4 n=0;TR0=0;
235 4 P3_0=1;P1_7=0;
*** ERROR C202 IN LINE 235 OF TEXT1.C: 'P3_0': undefined identifier
*** ERROR C202 IN LINE 235 OF TEXT1.C: 'P1_7': undefined identifier
236 4 delay(500);
237 4 }
238 3 }
239 2 }
240 1 TR0=0;
241 1 }
242 /*********************************************************************/
243 /*--主函数--*/
244 void main()
245 {
246 1 init_timer(); /*定时器T0初始化*/
247 1 EA=1;EX0=1; /*开总中断,开外中断0*/
248 1 P3_0=0; /*关闭线路(挂机)*/
*** ERROR C202 IN LINE 248 OF TEXT1.C: 'P3_0': undefined identifier
249 1 P3_1=0;
*** ERROR C202 IN LINE 249 OF TEXT1.C: 'P3_1': undefined identifier
250 1 while(1) /*无限循环*/
251 1 {
252 2 switch(set) /*根据Set标志散转*/
253 2 {
254 3 case 0:stop();break; /*关机*/
255 3 case 1:work();break; /*警戒工作*/
256 3 case 2:in_time1();break; /*输入时间t1*/
257 3 case 3:in_time2();break; /*输入时间t2*/
258 3 case 4:in_data();break; /*输入电话号码*/
259 3 default:break;
260 3 }
C51 COMPILER V7.20 TEXT1 09/02/2007 23:08:36 PAGE 6
261 2 if(flag!=0x55) /*若flag标志变化,数码管显示E(错误)*/
262 2 {P1=0x86;delay(1);}
263 2 }
264 1 }
C51 COMPILATION COMPLETE. 0 WARNING(S), 43 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -