📄 smallfunction.lst
字号:
520 4 {//i亮红灯
521 5 j=2;
522 5 }
523 4 }
524 3 else
525 3 {
C51 COMPILER V7.50 SMALLFUNCTION 04/03/2007 10:38:52 PAGE 10
526 4 j=2;//亮红灯
527 4 }
528 3 }
529 2 //亮灭输出
530 2 if(j!=3)
531 2 {
532 3 t=IOMap[i][j];
533 3 t1=t & 0x0f;
534 3 t=0x01;
535 3 for(t2=0;t2<t1;t2++)
536 3 t<<=1;//bit位
537 3 t1=IOMap[i][j];
538 3 t2= t1 >>4;//输出地址
539 3 OutputBuf[t2]|=t;
540 3 }
541 2 k<<=1;
542 2 }
543 1 //1
544 1 k=0x01;
545 1 for(i=8;i<16;i++)
546 1 {
547 2 if(k & 0xc6)//人行
548 2 {
549 3 if((k & CheDaoBuf[1])!=0)//选中的人行道
550 3 {
551 4 if((ManChanelSta==STA_GREEN)||(ManChanelSta==STA_GS))
552 4 {
553 5 if(GsFlag)//i亮绿灯
554 5 j=0;
555 5 else
556 5 j=3;//不亮
557 5 }
558 4 else
559 4 {//i亮红灯
560 5 j=2;
561 5 }
562 4 }
563 3 else
564 3 {
565 4 j=2;//亮红灯
566 4 }
567 3 }
568 2 else//车道
569 2 {
570 3 if((k & CheDaoBuf[0])!=0)//选中的车道
571 3 {
572 4 if((CarChanelSta==STA_GREEN)||(CarChanelSta==STA_GS))
573 4 {
574 5 if(GsFlag)//i亮绿灯
575 5 j=0;
576 5 else
577 5 j=3;//不亮
578 5 }
579 4 else if((CarChanelSta==STA_YELLOW))
580 4 {//i亮黄灯
581 5 j=1;
582 5 }
583 4 else
584 4 {//i亮红灯
585 5 j=2;
586 5 }
587 4 }
C51 COMPILER V7.50 SMALLFUNCTION 04/03/2007 10:38:52 PAGE 11
588 3 else
589 3 {
590 4 j=2;//亮红灯
591 4 }
592 3 }
593 2 //亮灭输出
594 2 if(j!=3)
595 2 {
596 3 t=IOMap[i][j];
597 3 t1=t & 0x0f;
598 3 t=0x01;
599 3 for(t2=0;t2<t1;t2++)
600 3 t<<=1;//bit位
601 3 t1=IOMap[i][j];
602 3 t2= t1 >>4;//输出地址
603 3 OutputBuf[t2]|=t;
604 3 }
605 2 k<<=1;
606 2 }
607 1 //2
608 1 k=0x01;
609 1 for(i=16;i<20;i++)
610 1 {
611 2 if(k & 0x08)//人行
612 2 {
613 3 if((k & CheDaoBuf[1])!=0)//选中的人行道
614 3 {
615 4 if((ManChanelSta==STA_GREEN)||(ManChanelSta==STA_GS))
616 4 {
617 5 if(GsFlag)//i亮绿灯
618 5 j=0;
619 5 else
620 5 j=3;//不亮
621 5 }
622 4 else
623 4 {//i亮红灯
624 5 j=2;
625 5 }
626 4 }
627 3 else
628 3 {
629 4 j=2;//亮红灯
630 4 }
631 3 }
632 2 else//车道
633 2 {
634 3 if((k & CheDaoBuf[0])!=0)//选中的车道
635 3 {
636 4 if((CarChanelSta==STA_GREEN)||(CarChanelSta==STA_GS))
637 4 {
638 5 if(GsFlag)//i亮绿灯
639 5 j=0;
640 5 else
641 5 j=3;//不亮
642 5 }
643 4 else if((CarChanelSta==STA_YELLOW))
644 4 {//i亮黄灯
645 5 j=1;
646 5 }
647 4 else
648 4 {//i亮红灯
649 5 j=2;
C51 COMPILER V7.50 SMALLFUNCTION 04/03/2007 10:38:52 PAGE 12
650 5 }
651 4 }
652 3 else
653 3 {
654 4 j=2;//亮红灯
655 4 }
656 3 }
657 2 //亮灭输出
658 2 if(j!=3)
659 2 {
660 3 t=IOMap[i][j];
661 3 t1=t & 0x0f;
662 3 t=0x01;
663 3 for(t2=0;t2<t1;t2++)
664 3 t<<=1;//bit位
665 3 t1=IOMap[i][j];
666 3 t2= t1 >>4;//输出地址
667 3 OutputBuf[t2]|=t;
668 3 }
669 2 k<<=1;
670 2 }
671 1
672 1 i=OutputBuf[6];
673 1 i=i<<4;
674 1 OutputBuf[6]|=i;
675 1 ////
676 1 OutputBuf[0]^=0xff;
677 1 OutputBuf[1]^=0xff;
678 1 OutputBuf[2]^=0xff;
679 1 OutputBuf[3]^=0xff;
680 1 OutputBuf[4]^=0xff;
681 1 OutputBuf[5]^=0xff;
682 1 OutputBuf[6]^=0xff;
683 1
684 1 OUT0=OutputBuf[0];
685 1 OUT1=OutputBuf[1];
686 1 OUT2=OutputBuf[2];
687 1 OUT3=OutputBuf[3];
688 1 OUT4=OutputBuf[4];
689 1 OUT5=OutputBuf[5];
690 1 OUT6=OutputBuf[6];
691 1 }
692
693 void ShowDesk()
694 {
695 1 unsigned char xdata i,k;
696 1 k=XBYTE[RTC_BASE+RegMonth];
697 1 {//月
698 2 i=0;
699 2 while(k>=10)
700 2 {k-=10;i++;}
701 2 i+='0';
702 2 LcdChar(0,2,i);
703 2 k+='0';
704 2 LcdAddChar(k);
705 2 }
706 1 LcdCnString(0,3,"月");
707 1 k=XBYTE[RTC_BASE+RegDate];
708 1 {//日
709 2 i=0;
710 2 while(k>=10)
711 2 {k-=10;i++;}
C51 COMPILER V7.50 SMALLFUNCTION 04/03/2007 10:38:52 PAGE 13
712 2 i+='0';
713 2 LcdChar(0,4,i);
714 2 k+='0';
715 2 LcdAddChar(k);
716 2 }
717 1 LcdCnString(0,5,"日");
718 1
719 1 k=XBYTE[RTC_BASE+RegHours];
720 1 {//小时
721 2 i=0;
722 2 while(k>=10)
723 2 {k-=10;i++;}
724 2 i+='0';
725 2 LcdChar(1,2,i);
726 2 k+='0';
727 2 LcdAddChar(k);
728 2 LcdAddChar(':');
729 2 }
730 1 k=XBYTE[RTC_BASE+RegMinutes];
731 1 {//分钟
732 2 i=0;
733 2 while(k>=10)
734 2 {k-=10;i++;}
735 2 i+='0';
736 2 LcdAddChar(i);
737 2 k+='0';
738 2 LcdAddChar(k);
739 2 LcdAddChar(':');
740 2 }
741 1
742 1 k=XBYTE[RTC_BASE+RegSeconds];
743 1 {//秒
744 2 i=0;
745 2 while(k>=10)
746 2 {k-=10;i++;}
747 2 i+='0';
748 2 LcdAddChar(i);
749 2 k+='0';
750 2 LcdAddChar(k);
751 2 LcdAddChar(':');
752 2 }
753 1
754 1 if(PswLock)
*** ERROR C202 IN LINE 754 OF IIC[ULTRAL]\SMALLFUNCTION.C: 'PswLock': undefined identifier
755 1 LcdCnString(3,4,"锁");
756 1 else
757 1 LcdCnString(3,4,"开");
758 1
759 1
760 1 if(MeterSta==MSTA_GREENWAY;)
*** ERROR C202 IN LINE 760 OF IIC[ULTRAL]\SMALLFUNCTION.C: 'MeterSta': undefined identifier
*** ERROR C141 IN LINE 760 OF IIC[ULTRAL]\SMALLFUNCTION.C: syntax error near ';'
*** ERROR C141 IN LINE 760 OF IIC[ULTRAL]\SMALLFUNCTION.C: syntax error near ')'
761 1 LcdCnString(3,1,"绿");
762 1 else if(MeterSta==MSTA_MANUAL)
*** ERROR C141 IN LINE 762 OF IIC[ULTRAL]\SMALLFUNCTION.C: syntax error near 'else'
*** ERROR C202 IN LINE 762 OF IIC[ULTRAL]\SMALLFUNCTION.C: 'MeterSta': undefined identifier
763 1 LcdCnString(3,1,"手");
764 1 else
765 1 LcdCnString(3,1,"自");
766 1 }
767
C51 COMPILER V7.50 SMALLFUNCTION 04/03/2007 10:38:52 PAGE 14
768
769 //////////////无效中断服务代码//////////
770 void EX_INT0() interrupt INT_SOURCE_EX0
771 {
772 1 unsigned char t;
773 1 t=XBYTE[RTC_BASE+CtrlRegC];
774 1 EX0=0;
775 1 }
776
777 void timer0() interrupt INT_SOURCE_T0
778 {
779 1 ET0=0;
780 1 }
781
782 void timer1() interrupt INT_SOURCE_T1
783 {
784 1 ET1=0;
785 1 }
C51 COMPILATION COMPLETE. 2 WARNING(S), 29 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -