📄 zhongcai.lst
字号:
228 void main()
229 {
230 1 uchar M = 1;
231 1 FlagCurrent = ZhongCai;
232 1 P12 = 1; P13 = 1; P14 = 1; P15 = 1;
233 1 P16 = 1; P17 = 1; P36 = 1;
234 1
235 1 InitSerialCom();
C51 COMPILER V7.50 ZHONGCAI 03/17/2008 20:44:52 PAGE 5
236 1 Time0Initial();
237 1
238 1 ClearComRam(ComSlaveLenAdd1);
239 1 ClearComRam(ComSlaveLenAdd2);
240 1 ClearComRam(ComSlaveLenAdd3);
241 1 ClearComRam(ComSlaveLenAdd4);
242 1 ClearComRam(ComSlaveLenAdd5);
243 1
244 1 ClearComRam(ComAlarmLenAdd1);
245 1 ClearComRam(ComAlarmLenAdd2);
246 1 ClearComRam(ComAlarmLenAdd3);
247 1 ClearComRam(ComAlarmLenAdd4);
248 1 ClearComRam(ComAlarmLenAdd5);
249 1
250 1 ClearComRam(ComLenOrder);
251 1 ClearComRam(ComLenTimer);
252 1 ClearComRam(ComLenOutput);
253 1
254 1 ComReadBytes(ComSlaveEnable,SlaveEnableRcv,LenCmdSlaveEnable);
255 1 if((SlaveEnableRcv[0] == 0x2A) && (SlaveEnableRcv[1] == 0xA8))
256 1 {
257 2 if(SlaveEnableRcv[2] == 1){ FlagSlave1Enable = 1;} else { FlagSlave1Enable = 0;}
258 2 if(SlaveEnableRcv[3] == 1){ FlagSlave2Enable = 1;} else { FlagSlave2Enable = 0;}
259 2 if(SlaveEnableRcv[4] == 1){ FlagSlave3Enable = 1;} else { FlagSlave3Enable = 0;}
260 2 if(SlaveEnableRcv[5] == 1){ FlagSlave4Enable = 1;} else { FlagSlave4Enable = 0;}
261 2 if(SlaveEnableRcv[6] == 1){ FlagSlave5Enable = 1;} else { FlagSlave5Enable = 0;}
262 2 }
263 1
264 1
265 1 while(1)
266 1 {
267 2
268 2 switch(FlagCurrent)
269 2 {
270 3 case ZhongCai:
271 3 {
272 4 P2 = P2 | 0x07;
273 4 ComReadBytes(ComSlaveEnable,SlaveEnableRcv,LenCmdSlaveEnable);
274 4 if((SlaveEnableRcv[0] == 0x2A) && (SlaveEnableRcv[1] == 0xA8))
275 4 {
276 5 if(SlaveEnableRcv[2] == 1){ FlagSlave1Enable = 1;} else { FlagSlave1Enable = 0;}
277 5 if(SlaveEnableRcv[3] == 1){ FlagSlave2Enable = 1;} else { FlagSlave2Enable = 0;}
278 5 if(SlaveEnableRcv[4] == 1){ FlagSlave3Enable = 1;} else { FlagSlave3Enable = 0;}
279 5 if(SlaveEnableRcv[5] == 1){ FlagSlave4Enable = 1;} else { FlagSlave4Enable = 0;}
280 5 if(SlaveEnableRcv[6] == 1){ FlagSlave5Enable = 1;} else { FlagSlave5Enable = 0;}
281 5 }
282 4 ClearComRam(ComLenOrder);
283 4
284 4 P2 = P2 | 0x07;
285 4 P0 = 0xFF; //設置P0口高阻抗。
286 4 FlagCurrent = Output;
287 4 }
288 3 break;
289 3
290 3 case Output:
291 3 {
292 4 P2 = P2 | 0x07;
293 4 P2 = P2 & 0xFE;
294 4 Delay(DelayTime);
295 4 P2 = P2 | 0x07;
296 4 P36 = 1;
297 4 while (P36 == 1);
C51 COMPILER V7.50 ZHONGCAI 03/17/2008 20:44:52 PAGE 6
298 4
299 4 if(P36 == 0)
300 4 {
301 5 FlagCurrent = Main;
302 5 }
303 4 }
304 3 break;
305 3
306 3 case Main:
307 3 {
308 4 P2 = P2 | 0x07;
309 4 P2 = P2 & 0xFD;
310 4 Delay(DelayTime);
311 4 P2 = P2 | 0x07;
312 4 P17 = 1;
313 4 while (P17 == 1);
314 4 if(P17 == 0)
315 4 {
316 5 FlagCurrent = Slave5;
317 5 }
318 4
319 4 }
320 3 break;
321 3
322 3 case Slave5:
323 3 {
324 4 if(FlagSlave5Enable == 1)
325 4 {
326 5 P2 = P2 | 0x07;
327 5 P2 = P2 & 0xFC;
328 5 Delay(DelayTime);
329 5 P2 = P2 | 0x07;
330 5
331 5 P16 = 1;
332 5 while (P16 == 1);
333 5 if(P16 == 0)
334 5 {
335 6 FlagCurrent = Slave4;
336 6 }
337 5
338 5 }
339 4 else
340 4 {
341 5 FlagCurrent = Slave4;
342 5 }
343 4 }
344 3 break;
345 3
346 3 case Slave4:
347 3 {
348 4 if(FlagSlave4Enable == 1)
349 4 {
350 5 P2 = P2 | 0x07;
351 5 P2 = P2 & 0xFB;
352 5 Delay(DelayTime);
353 5 P2 = P2 | 0x07;
354 5
355 5 P15 = 1;
356 5 while (P15 == 1);
357 5 if(P15 == 0)
358 5 {
359 6 FlagCurrent = Slave3;
C51 COMPILER V7.50 ZHONGCAI 03/17/2008 20:44:52 PAGE 7
360 6 }
361 5
362 5 }
363 4 else
364 4 {
365 5 FlagCurrent = Slave3;
366 5 }
367 4 }
368 3 break;
369 3
370 3 case Slave3:
371 3 {
372 4 if(FlagSlave3Enable == 1)
373 4 {
374 5 P2 = P2 | 0x07;
375 5 P2 = P2 & 0xFA;
376 5 Delay(DelayTime);
377 5 P2 = P2 | 0x07;
378 5
379 5 P14 = 1;
380 5 while (P14 == 1);
381 5 if(P14 == 0)
382 5 {
383 6 FlagCurrent = Slave2;
384 6 }
385 5 }
386 4 else
387 4 {
388 5 FlagCurrent = Slave2;
389 5 }
390 4 }
391 3 break;
392 3
393 3 case Slave2:
394 3 {
395 4 if(FlagSlave2Enable == 1)
396 4 {
397 5 P2 = P2 | 0x07;
398 5 P2 = P2 & 0xF9;
399 5 Delay(DelayTime);
400 5 P2 = P2 | 0x07;
401 5
402 5 P13 = 1;
403 5 while (P13 == 1);
404 5 if(P13 == 0)
405 5 {
406 6 FlagCurrent = Slave1;
407 6 }
408 5
409 5 }
410 4 else
411 4 {
412 5 FlagCurrent = Slave1;
413 5 }
414 4 }
415 3 break;
416 3
417 3 case Slave1:
418 3 {
419 4 if(FlagSlave1Enable == 1)
420 4 {
421 5 P2 = P2 | 0x07;
C51 COMPILER V7.50 ZHONGCAI 03/17/2008 20:44:52 PAGE 8
422 5 P2 = P2 & 0xF8;
423 5 Delay(DelayTime);
424 5 P2 = P2 | 0x07;
425 5
426 5 P12 = 1;
427 5 while (P12 == 1);
428 5 if(P12 == 0)
429 5 {
430 6 FlagCurrent = ZhongCai;
431 6 }
432 5
433 5 }
434 4 else
435 4 {
436 5 FlagCurrent = ZhongCai;
437 5 }
438 4 }
439 3 break;
440 3
441 3 default:
442 3 {
443 4 P2 = P2 | 0x07;
444 4 FlagCurrent = ZhongCai;
445 4 }
446 3 break;
447 3 }
448 2 }
449 1
450 1 }
451
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 711 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 15 8
IDATA SIZE = ---- ----
BIT SIZE = 6 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -