📄 lprtpos1.lst
字号:
632 4 for (i=0;i<100;i++) errshow();
633 4 if (ecount>2) break;
634 4 }
635 3
636 3 }
637 2 if (pjz==0x0e) {pjz=0xff;break; }
638 2
639 2 }
640 1
641 1
642 1 ncount=0; pjz=0xff;
643 1 rqH=rqL=26;ecount=0;
644 1 while (scount==2)
645 1 {
646 2 clockshow(led[rqbj],led[rqH],led[rqL]);
647 2 if ((flag==0)&&(lcbj==0))
648 2 {
649 3 pjz=kbscan();
650 3 if ((lcbj==0)&&(pjz!=0xff))
651 3 {
652 4 while(flag==1)
653 4 {
654 5 P1=0x9f;
655 5 P2=P2&0x1f;
656 5 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
657 5
658 5 }
659 4 }
660 3
661 3 }
662 2 else {
663 3 P1=0x9f;
664 3 P2=P2&0x1f;
665 3 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
666 3 }
667 2
668 2 if ((pjz<0x0a)&&(flag==0))
669 2 {
670 3 if (ncount==0) {rqH=pjz;}
671 3 if (ncount==1) {rqL=pjz;}
672 3 ncount++;
673 3 pjz=0xff;
674 3 }
675 2 if (ncount>=2) ncount=0;
C51 COMPILER V7.06 LPRTPOS1 01/08/2007 10:43:11 PAGE 12
676 2 if (pjz==0x0b)
677 2 {
678 3 ncount=0; errbj=0;pjz=0xff;
679 3
680 3 rq[2]=(rqH<<4)|rqL;
681 3 if (rq[1]==0x02)
682 3 {/*thy*/
683 4 yrq=0x2000+rq[0];
684 4 if ((yrq %4)==0) {if (rq[2]>0x29) {errbj=1;ecount++;}}
685 4 else if ((yrq%4)!=0) { if (rq[2]>0x28) {errbj=1;ecount++;}}
686 4
687 4 }
688 3 else if ((rq[1]==0x04)||(rq[1]==0x06)||(rq[1]==0x09)||(rq[1]==0x11))
689 3 {if (rq[2]>0x30) {errbj=1;ecount++;}}
690 3
691 3 else if ((rq[1]==0x01)||(rq[1]==0x03)||(rq[1]==0x05)||(rq[1]==0x07)||(rq[1]==0x08)||(rq[
-1]==0x10)||(rq[1]==0x12))
692 3 {if (rq[2]>0x31) {errbj=1;ecount++;}}
693 3 if (errbj==0)
694 3 {
695 4 scount++;ncount=0;rqbj=scount;
696 4 }
697 3 else
698 3 {
699 4 for (i=0;i<100;i++) errshow();
700 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
701 4 delay(200);
702 4 for (i=0;i<100;i++) errshow();
703 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
704 4 delay(200);
705 4 for (i=0;i<100;i++) errshow();
706 4 if (ecount>2) break;
707 4 }
708 3
709 3 }
710 2 if (pjz==0x0e) {pjz=0xff;break; }
711 2
712 2 }
713 1
714 1
715 1 ncount=0; pjz=0xff;
716 1 rqH=0;rqL=26;ecount=0;
717 1
718 1 while (scount==3)
719 1 {
720 2 clockshow(led[rqbj],led[rqH],led[rqL]);
721 2 if ((flag==0)&&(lcbj==0))
722 2 {
723 3 pjz=kbscan();
724 3 if ((lcbj==0)&&(pjz!=0xff))
725 3 {
726 4 while(flag==1)
727 4 {
728 5 P1=0x9f;
729 5 P2=P2&0x1f;
730 5 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
731 5
732 5 }
733 4 }
734 3
735 3 }
736 2 else {
C51 COMPILER V7.06 LPRTPOS1 01/08/2007 10:43:11 PAGE 13
737 3 P1=0x9f;
738 3 P2=P2&0x1f;
739 3 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
740 3 }
741 2
742 2 if ((pjz<0x0a)&&(flag==0))
743 2 {
744 3 rqL=pjz;
745 3 pjz=0xff;
746 3 }
747 2 if (pjz==0x0b)
748 2 {
749 3 ncount=0; errbj=0;pjz=0xff;
750 3
751 3 rq[3]=rqL;
752 3 if (rq[3]>0x07) {errbj=1;ecount++;}
753 3
754 3 if (errbj==0)
755 3 {
756 4 scount++;ncount=0;rqbj=scount;
757 4 }
758 3 else
759 3 {
760 4 for (i=0;i<100;i++) errshow();
761 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
762 4 delay(200);
763 4 for (i=0;i<100;i++) errshow();
764 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
765 4 delay(200);
766 4 for (i=0;i<100;i++) errshow();
767 4 if (ecount>2) break;
768 4 }
769 3
770 3 }
771 2 if (pjz==0x0e) {pjz=0xff;break; }
772 2
773 2 }
774 1
775 1
776 1
777 1 ncount=0; pjz=0xff;
778 1 rqH=rqL=26;ecount=0;
779 1
780 1 while (scount==4)
781 1 {
782 2 clockshow(led[rqbj],led[rqH],led[rqL]);
783 2 if ((flag==0)&&(lcbj==0))
784 2 {
785 3 pjz=kbscan();
786 3 if ((lcbj==0)&&(pjz!=0xff))
787 3 {
788 4 while(flag==1)
789 4 {
790 5 P1=0x9f;
791 5 P2=P2&0x1f;
792 5 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
793 5
794 5 }
795 4 }
796 3
797 3 }
798 2 else {
C51 COMPILER V7.06 LPRTPOS1 01/08/2007 10:43:11 PAGE 14
799 3 P1=0x9f;
800 3 P2=P2&0x1f;
801 3 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
802 3 }
803 2
804 2 if ((pjz<0x0a)&&(flag==0))
805 2 {
806 3 if (ncount==0) {rqH=pjz;}
807 3 if (ncount==1) {rqL=pjz;}
808 3 ncount++;
809 3 pjz=0xff;
810 3 }
811 2 if (ncount>=2) ncount=0;
812 2 if (pjz==0x0b)
813 2 {
814 3 ncount=0; errbj=0;pjz=0xff;
815 3
816 3 rq[4]=(rqH<<4)|rqL;
817 3 if (rq[4]>0x23) {errbj=1;ecount++;}
818 3
819 3 if (errbj==0)
820 3 {
821 4 scount++;ncount=0;rqbj=scount;
822 4 }
823 3 else
824 3 {
825 4 for (i=0;i<100;i++) errshow();
826 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
827 4 delay(200);
828 4 for (i=0;i<100;i++) errshow();
829 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
830 4 delay(200);
831 4 for (i=0;i<100;i++) errshow();
832 4 if (ecount>2) break;
833 4 }
834 3
835 3 }
836 2 if (pjz==0x0e) {pjz=0xff;break; }
837 2
838 2 }
839 1
840 1
841 1
842 1 ncount=0; pjz=0xff;
843 1 rqH=rqL=26;ecount=0;
844 1
845 1 while (scount==5)
846 1 {
847 2 clockshow(led[rqbj],led[rqH],led[rqL]);
848 2 if ((flag==0)&&(lcbj==0))
849 2 {
850 3 pjz=kbscan();
851 3 if ((lcbj==0)&&(pjz!=0xff))
852 3 {
853 4 while(flag==1)
854 4 {
855 5 P1=0x9f;
856 5 P2=P2&0x1f;
857 5 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
858 5
859 5 }
860 4 }
C51 COMPILER V7.06 LPRTPOS1 01/08/2007 10:43:11 PAGE 15
861 3
862 3 }
863 2 else {
864 3 P1=0x9f;
865 3 P2=P2&0x1f;
866 3 if ((P1&0x9f)==0x9f) {flag=0; lcbj=0;}
867 3 }
868 2
869 2 if ((pjz<0x0a)&&(flag==0))
870 2 {
871 3 if (ncount==0) {rqH=pjz;}
872 3 if (ncount==1) {rqL=pjz;}
873 3 ncount++;
874 3 pjz=0xff;
875 3 }
876 2 if (ncount>=2) ncount=0;
877 2 if (pjz==0x0b)
878 2 {
879 3 ncount=0; errbj=0;pjz=0xff;
880 3
881 3 rq[5]=(rqH<<4)|rqL;
882 3 if (rq[5]>0x59) {errbj=1;ecount++;}
883 3
884 3 if (errbj==0)
885 3 {
886 4 // scount++;ncount=0;rqbj=scount;
887 4 /*向时钟芯片中写入暂不写入 thy*/
888 4 // year=(rq[0]>>4)*10+(rq[0]&0x0f);month=(rq[1]>>4)*10+(rq[1]&0x0f);day=(rq[2]>>4)*1
-0+(rq[2]&0x0f);
889 4 time[4]=rq[3];
890 4 time[6]=rq[0];time[5]=rq[1];time[3]=rq[2];
891 4 // time[2]=(rq[4]>>4)*10+(rq[4]&0x0f);time[1]=(rq[5]>>4)*10+(rq[5]&0x0f);
892 4 time[2]=rq[4];time[1]=rq[5];
893 4 // rq[4]=hour;rq[5]=min;
894 4 set_time(time);
895 4 for (i=0;i<200;i++) setpassok();
896 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
897 4 delay(200);
898 4 for (i=0;i<200;i++) setpassok();
899 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
900 4 delay(200);
901 4 for (i=0;i<200;i++) setpassok();
902 4 break;
903 4
904 4
905 4 }
906 3 else
907 3 {
908 4 for (i=0;i<100;i++) errshow();
909 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
910 4 delay(200);
911 4 for (i=0;i<100;i++) errshow();
912 4 P0=0;P2=P2&0xf6;P2=P2|0x09;
913 4 delay(200);
914 4 for (i=0;i<100;i++) errshow();
915 4 if (ecount>2) break;
916 4 }
917 3
918 3 }
919 2 if (pjz==0x0e) {pjz=0xff;break; }
920 2
921 2 }
C51 COMPILER V7.06 LPRTPOS1 01/08/2007 10:43:11 PAGE 16
922 1
923 1 }
924
925
926 /*时钟设置*/
927 /*STC89CXXX的EEPROM读写*/
928 void noable(void)
929 {
930 1 ISP_CONTR=0x00;
931 1 ISP_CMD=0x00;
932 1 ISP_TRIG=0x00;
933 1 EA=0;
934 1 }
935
936 void erase(UINT16 addr)
937 {
938 1 ISP_CONTR=0x81;
939 1 ISP_CMD=0x03;
940 1 ISP_ADDRH=(UINT8)(addr>>8);
941 1 ISP_ADDRL=(UINT8)(addr&0x00ff);
942 1 EA=0;
943 1 ISP_TRIG=0x46;
944 1 ISP_TRIG=0xB9;
945 1 EA=1;
946 1 noable();
947 1
948 1 }
949 void wwr(UINT16 addr,UINT8 dd)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -