📄 7.lst
字号:
279 3 delay();
280 3 SB1=1;
281 3 delay();
282 3 n=ST/10;
283 3 SB2=0;
284 3 P0=table[n];
285 3 delay();
286 3 delay();
287 3 SB2=1;
288 3 delay();
289 3 if(add==0)
290 3 {
291 4 for(k=0;k<20000;k++)
292 4 ;
293 4 if(add==0)
294 4 D1++;
295 4 //if(D1==99)
296 4 // D1=0;
297 4 }
298 3 if(dec==0)
299 3 {
300 4 for(k=0;k<20000;k++)
301 4 ;
302 4 if(dec==0)
303 4 D1--;
C51 COMPILER V7.06 7 05/12/2006 19:27:59 PAGE 6
304 4 //if(D1==0);
305 4 //D1=99;
306 4 }
307 3 }
308 2 C_G=1;
309 2 if(menu==0)
310 2 {for(k=0;k<10000;k++)
311 3 ;
312 3 if(menu==0)
313 3 { for(k=0;k<20000;k++)
314 4 ;
315 4 if(menu==0)
316 4 {for(k=0;k<50000;k++)
317 5 ;
318 5 exit=0;
319 5 }
320 4 }
321 3 }
322 2
323 2 }
324 1
325 1 }
326 void main(void)///////////////////////////////////////////////////////////////////
327 {
328 1 A1=15;//主干转弯时间
329 1 B1=60;//主干通行时间
330 1 C1=10;//次干转弯时间
331 1 D1=45;//次干通行时间
332 1 a=A1;//15
333 1 b=A1+B1;//75
334 1 c=C1;//10
335 1 d=C1+D1;//15
336 1 if(menu==0)
337 1 for(k=0;k<10000;k++)
338 1 ;
339 1 if(menu==0)
340 1 settime();
341 1 init();
342 1 a=A1;//15
343 1 b=A1+B1;//75
344 1 c=C1;//10
345 1 d=C1+D1;//15
346 1 while(1)
347 1 {
348 2 switch(CASE)
349 2 {
350 3 case 1:
351 3 PT=a;
352 3 ST=b;
353 3
354 3 C_R=0;//C go ahead forbit
355 3 D_R=0;//D go ahead forbit
356 3 A_A=0;//A road turn left allow
357 3 A_R=0;
358 3 B_A=0;//B road turn left allow
359 3 B_R=0;
360 3 PR_G=0;//primary road turn right allow
361 3 PR_R=1;
362 3 SR_R=0;//secondary road turn right forbit
363 3 SR_G=1;
364 3 PSW_G=1;//primary road sidewalk forbit
365 3 PSW_R=0;
C51 COMPILER V7.06 7 05/12/2006 19:27:59 PAGE 7
366 3 SSW_G=1;//secondary road sidewalk forbit
367 3 SSW_R=0;
368 3 while(!(PT==0&&ST==0))
369 3 {
370 4 if(PT<6&&ST<(B1+6)&&ST>PT)
371 4 {
372 5 if(PT%2==1)
373 5 {
374 6 A_A=1;//A road turn left flash
375 6 B_A=1;//B road turn left flash
376 6 }
377 5 else
378 5 {
379 6 A_A=0;
380 6 B_A=0;
381 6 }
382 5 }
383 4 if(PT==0&&ST==B1)
384 4 {
385 5 PT=B1;
386 5 A_A=1;//A road turn left forbid
387 5 B_A=1;//B road turn left forbid
388 5 PR_G=1;//primary road turn right forbid
389 5 PR_R=0;
390 5 A_G=0;//A road go ahead allow
391 5 A_R=1;
392 5 B_G=0;//B road go ahead allow
393 5 B_R=1;
394 5 SSW_G=0;//secondary road sidewalk allow
395 5 SSW_R=1;
396 5 }
397 4 if(PT<6&&ST<6)
398 4 {
399 5 A_G=1;
400 5 B_G=1;
401 5 if(PT%2==1)
402 5 {
403 6 A_Y=1;//A road yellow light flash
404 6 B_Y=1;//B road yellow light flash
405 6 SSW_G=1;//secondary road sidewalk Green light flash
406 6 }
407 5 else
408 5 {
409 6 A_Y=0;
410 6 B_Y=0;
411 6 SSW_G=0;
412 6 }
413 5 }
414 4
415 4
416 4
417 4 if(menu==0)
418 4 {
419 5 for(g=0;g<300;g++)
420 5 ;
421 5 if(menu==0)
422 5 {
423 6 P0=0x00;
424 6 P1=0xFF;
425 6 P2=0xFF;
426 6 P3=0xFF;
427 6 A_R=0;
C51 COMPILER V7.06 7 05/12/2006 19:27:59 PAGE 8
428 6 B_R=0;
429 6 C_R=0;
430 6 D_R=0;
431 6 PSW_R=0;
432 6 SSW_R=0;
433 6 PR_R=0;
434 6 SR_R=0;
435 6 for(;;)
436 6 ;
437 6 }
438 5 }
439 4
440 4 display(PT,ST);
441 4 }
442 3 A_G=1;//A road go ahead forbit
443 3 B_G=1;//B road go ahead forbit
444 3 SSW_G=1;//secondary road sidewalk forbit
445 3 SSW_R=0;
446 3 CASE=2;
447 3 break;
448 3
449 3
450 3 case 2:
451 3 PT=d;
452 3 ST=c;
453 3 A_R=0;//A road go ahead forbit
454 3 B_R=0;//B road go ahead forbit
455 3 C_A=0;//C road turn left allow
456 3 C_R=0;
457 3 D_A=0;//D road turn left allow
458 3 C_R=0;
459 3 SR_R=1;//secondary road turn right allow
460 3 SR_G=0;
461 3 PSW_G=1;//primary road sidewalk forbit
462 3 PSW_R=0;
463 3 SSW_G=1;//secondary road sidewalk forbit
464 3 SSW_R=0;
465 3 while(!(PT==0&&ST==0))
466 3 {
467 4 if(PT<(6+D1)&&ST<6&&PT>ST)
468 4 {
469 5 if(PT%2==1)
470 5 {
471 6 C_A=1;//C road turn left flash
472 6 C_A=1;//C road turn left flash
473 6 }
474 5 else
475 5 {
476 6 C_A=0;
477 6 C_A=0;
478 6 }
479 5 }
480 4 if(PT==D1&&ST==0)
481 4 {
482 5 ST=D1;
483 5 C_A=1;//C road turn left forbid
484 5 D_A=1;//D road turn left forbid
485 5 SR_R=0;//secondary road turn right forbit
486 5 SR_G=1;
487 5 C_G=0;//C road go ahead allow
488 5 C_R=1;
489 5 D_G=0;//D road go ahead allow
C51 COMPILER V7.06 7 05/12/2006 19:27:59 PAGE 9
490 5 D_R=1;
491 5 PSW_G=0;//primary road sidewalk allow
492 5 PSW_R=1;
493 5
494 5
495 5 }
496 4 if(PT<6&&ST<6)
497 4 {
498 5 C_G=1;
499 5 D_G=1;
500 5 if(PT%2==1)
501 5 {
502 6 C_Y=1;//C road yellow light flash
503 6 D_Y=1;//D road yellow light flash
504 6 PSW_G=1;//primary road sidewalk Green light flash
505 6 }
506 5 else
507 5 {
508 6 C_Y=0;
509 6 D_Y=0;
510 6 PSW_G=0;
511 6 }
512 5 }
513 4
514 4
515 4 if(menu==0)
516 4 {
517 5 for(g=0;g<300;g++)
518 5 ;
519 5 if(menu==0)
520 5 {
521 6 P0=0x00;
522 6 P1=0xFF;
523 6 P2=0xFF;
524 6 P3=0xFF;
525 6 A_R=0;
526 6 B_R=0;
527 6 C_R=0;
528 6 D_R=0;
529 6 PSW_R=0;
530 6 SSW_R=0;
531 6 PR_R=0;
532 6 SR_R=0;
533 6 for(;;)
534 6 ;
535 6 }
536 5 }
537 4
538 4
539 4 display(PT,ST);
540 4 }
541 3 C_G=1;//C road go ahead forbit
542 3 D_G=1;//C road go ahead forbit
543 3 CASE=1;
544 3 break;
545 3
546 3 }
547 2 }
548 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
C51 COMPILER V7.06 7 05/12/2006 19:27:59 PAGE 10
CODE SIZE = 1436 ----
CONSTANT SIZE = 10 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 17 3
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 + -