📄 process.lst
字号:
734 {
735 1 // register uchar i,j;
736 1 uchar freezeday_end=0;
C51 COMPILER V7.50 PROCESS 07/19/2006 10:05:14 PAGE 13
737 1 static freezeday_flag;
738 1 // for(i=0;i<16;i++)
739 1 // for(j=0;j<6;j++)
740 1 // FreezeData[j+i*6]=sum[i][j];
741 1
742 1 switch(freezeday_flag)
743 1 {
744 2 case 0:
745 2 W_block(WPAGE2,i2c_day_freeze,&sum[0][0],96);
746 2 freezeday_end=1;
747 2 W_block(WPAGE0,i2c_day_flag,&freezeday_end,1);
748 2 freezeday_flag=1;
749 2 break;
750 2 case 1:
751 2 W_block(WPAGE3,i2c_day_freeze,&sum[0][0],96);
752 2 freezeday_end=0;
753 2 W_block(WPAGE0,i2c_day_flag,&freezeday_end,1);
754 2 freezeday_flag=0;
755 2 break;
756 2 }
757 1
758 1 }
759
760 /*******************************************************************
761 抄收日冻结数据函数
762 函数原型: void R_day(void)
763 功 能:
764
765 ********************************************************************/
766 void R_day()
767 {
768 1 register uchar i;
769 1
770 1 SenBuf[5]=(RecBuf[5]|0x80);
771 1 cs+=SenBuf[5];
772 1
773 1 SenBuf[6]=RecBuf[7]*6;
774 1 for(i=0;i<SenBuf[6];i++)
775 1 {
776 2 SenBuf[7+i]=FreezeData[i];
777 2 cs+=SenBuf[7+i];
778 2 }
779 1 cs+=SenBuf[6];
780 1 SenBuf[7+SenBuf[6]]=cs;
781 1 SenBuf[8+SenBuf[6]]=FRAME_END_CHAR;
782 1 Senlen=SenBuf[6]+9;
783 1 }
784
785 /*******************************************************************
786 设置月冻结函数
787 函数原型: void S_month(void)
788 功 能:
789
790 ********************************************************************/
791 void S_month(void)
792 {
793 1 // register uchar i,j;
794 1 uchar freezemonth_end=0;
795 1 static freezemonth_flag;
796 1 // for(i=0;i<16;i++)
797 1 // for(j=0;j<6;j++)
798 1 // FreezeData[j+i*6]=sum[i][j];
C51 COMPILER V7.50 PROCESS 07/19/2006 10:05:14 PAGE 14
799 1
800 1 switch(freezemonth_flag)
801 1 {
802 2 case 0:
803 2 W_block(WPAGE2,i2c_month_freeze,&sum[0][0],96);
804 2 freezemonth_end=1;
805 2 W_block(WPAGE0,i2c_month_flag,&freezemonth_end,1);
806 2 freezemonth_flag=1;
807 2 break;
808 2 case 1:
809 2 W_block(WPAGE3,i2c_month_freeze,&sum[0][0],96);
810 2 freezemonth_end=0;
811 2 W_block(WPAGE0,i2c_month_flag,&freezemonth_end,1);
812 2 freezemonth_flag=0;
813 2 break;
814 2 }
815 1
816 1 }
817
818 /*******************************************************************
819 抄收月冻结数据函数
820 函数原型: void R_month(void)
821 功 能:
822
823 ********************************************************************/
824 void R_month()
825 {
826 1 register uchar i;
827 1
828 1 SenBuf[5]=(RecBuf[5]|0x80);
829 1 cs+=SenBuf[5];
830 1
831 1 SenBuf[6]=RecBuf[7]*6;
832 1 for(i=0;i<SenBuf[6];i++)
833 1 {
834 2 SenBuf[7+i]=FreezeData[i];
835 2 cs+=SenBuf[7+i];
836 2 }
837 1 cs+=SenBuf[6];
838 1 SenBuf[7+SenBuf[6]]=cs;
839 1 SenBuf[8+SenBuf[6]]=FRAME_END_CHAR;
840 1 Senlen=SenBuf[6]+9;
841 1 }
842
843 /*******************************************************************
844 突发告警上报函数
845 函数原型: void Br_report(void)
846 功 能:
847
848 ********************************************************************/
849 /*
850 void Br_report()
851 {
852 register uchar i;
853 SenBuf[5]=(RecBuf[5]|0x80);
854 cs+=SenBuf[5];
855 SenBuf[6]=4;
856 cs+=SenBuf[6];
857 SenBuf[7]=alarm0;
858 SenBuf[8]=alarm1;
859 SenBuf[9]=alarm2;
860 SenBuf[10]=alarm3;
C51 COMPILER V7.50 PROCESS 07/19/2006 10:05:14 PAGE 15
861 for(i=0;i<4;i++)
862 cs+=SenBuf[7+i];
863 SenBuf[SenBuf[6]+7]=cs;
864 SenBuf[SenBuf[6]+8]=FRAME_END_CHAR;
865 Senlen=SenBuf[6]+9;
866
867 }
868 */
869 /*******************************************************************
870 地址上报函数
871 函数原型: void Ad_report(void)
872 功 能:
873
874 ********************************************************************/
875 void Ad_report()
876 {
877 1 SenBuf[5]=(RecBuf[5]|0x80);
878 1 cs+=SenBuf[5];
879 1 SenBuf[6]=0;
880 1 SenBuf[SenBuf[6]+7]=cs;
881 1 SenBuf[SenBuf[6]+8]=FRAME_END_CHAR;
882 1 Senlen=SenBuf[6]+9;
883 1
884 1 }
885
886 /*******************************************************************
887 轮询告警上报函数
888 函数原型: void Gb_report(void)
889 功 能:
890
891 ********************************************************************/
892 void Gb_report()
893 {
894 1 register uchar i;
895 1 SenBuf[5]=(RecBuf[5]|0x80);
896 1 cs+=SenBuf[5];
897 1 SenBuf[6]=4;
898 1 cs+=SenBuf[6];
899 1 SenBuf[7]=alarm0;
900 1 SenBuf[8]=alarm1;
901 1 SenBuf[9]=alarm2;
902 1 SenBuf[10]=alarm3;
903 1 for(i=0;i<4;i++)
904 1 cs+=SenBuf[7+i];
905 1 SenBuf[SenBuf[6]+7]=cs;
906 1 SenBuf[SenBuf[6]+8]=FRAME_END_CHAR;
907 1 Senlen=SenBuf[6]+9;
908 1
909 1 }
910 /*******************************************************************
911 校时函数
912 函数原型: void ch_Datetime(void)
913 功 能:
914
915 ********************************************************************/
916
917 void ch_Datetime()
918 {
919 1 // static uchar time_flag=0;
920 1 // register uchar time_end;
921 1 register i;
922 1 /*
C51 COMPILER V7.50 PROCESS 07/19/2006 10:05:14 PAGE 16
923 1 R_block(WPAGE0,RPAGE0,i2c_addr_timeflag,&time_end,1);
924 1 if(time_end==1)
925 1 R_block(WPAGE0,RPAGE0,i2c_addr_time,inittime,6);
926 1 else
927 1 R_block(WPAGE1,RPAGE1,i2c_addr_time,inittime,6);
928 1 */
929 1 for(i=0;i<6;i++)
930 1 {
931 2 RecBuf[7+i]=((RecBuf[7+i]/10)*16)+(RecBuf[7+i]%10);
932 2 inittime[i]=RecBuf[7+i];
933 2 }
934 1 ds1302set();
935 1
936 1 }
937
938 /*******************************************************************
939 系统初始化函数
940 函数原型: void Sys_init(void)
941 功 能:
942
943 ********************************************************************/
944 void Sys_init()
945 {
946 1 register uchar i,j;
947 1 uchar k=0,radd_end;
948 1 // bit tmp;
949 1
950 1 if(add_flag==0x07)
951 1 {
952 2 for(i=0;i<8;i++)
953 2 {
954 3 if((RecBuf[7]&0x80)==0x80)
955 3 {
956 4 for(j=0;j<6;j++)
957 4 sum[i][j]=RecBuf[9+j+6*k];
958 4 k++;
959 4 }
960 3 RecBuf[7]<<=1;
961 3 }
962 2 for(i=8;i<16;i++)
963 2 {
964 3 if((RecBuf[8]&0x80)==0x80)
965 3 {
966 4 for(j=0;j<6;j++)
967 4 sum[i][j]=RecBuf[9+j+6*k];
968 4 k++;
969 4 }
970 3 RecBuf[8]<<=1;
971 3 }
972 2
973 2 W_block(WPAGE0,i2c_addr_data,&sum[0][0],RecBuf[6]-2);
974 2 radd_end=1;
975 2 W_block(WPAGE0,i2c_addr_addflag,&radd_end,1);
976 2 W_block(WPAGE1,i2c_addr_data,&sum[0][0],RecBuf[6]-2);
977 2 }
978 1 else
979 1 {
980 2 for(i=0;i<16;i++)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -