⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ad.lst

📁 此程序为本人在公司开发的继电器功能测试仪
💻 LST
📖 第 1 页 / 共 5 页
字号:
 858   2                              }*/
 859   2                      }
 860   1                      DA_Convert(0);
 861   1                      if(TH_Flag)
C51 COMPILER V7.06   AD                                                                    08/06/2007 17:38:09 PAGE 15  

 862   1                      {
 863   2                              if((Test_Data[5]>=Comp_Data[10])&&(Test_Data[5]<=Comp_Data[11])) SetP_Data[4]=14;//ok
 864   2                              else SetP_Data[4]=13;//ng
 865   2                              Num_Convert(Test_Data[5],4);
 866   2                              //Tests_Data(SetP_Data,5,6);
 867   2                              if((Page_Val==0)||(Page_Val==6)) Tests_Data(SetP_Data,5,6);
 868   2                              else if(Page_Val==3) Tests_Data(SetP_Data,5,7);
 869   2                              if(SetP_Data[4]==13)
 870   2                              {
 871   3                                      NG_Flag=1;
 872   3                                      IO_A&=0xF7;
 873   3                                      IO_C&=0xFD;
 874   3                              }
 875   2                              if(Test_Data[6]>=Comp_Data[12]&&Test_Data[6]<Comp_Data[13]) SetP_Data[4]=14;//ok
 876   2                              else 
 877   2                              {
 878   3                                      SetP_Data[4]=13;//ng
 879   3                                      IO_A&=0xF7;
 880   3                                      IO_C&=0xFC;
 881   3                              }
 882   2                              Num_Convert(Test_Data[6],4);
 883   2                              //Tests_Data(SetP_Data,5,7);
 884   2                              if((Page_Val==0)||(Page_Val==6)) Tests_Data(SetP_Data,5,7);
 885   2                              else if(Page_Val==3) Tests_Data(SetP_Data,5,8);
 886   2                              if((SetP_Data[4]==13)||(NG_Flag==1))
 887   2                              {
 888   3                                      //TR0=0;
 889   3                                      //IO_B|=0x60;
 890   3                                      IO_B=0xFF;
 891   3                                      //V_Value=0;
 892   3                                      DA_Convert(0);
 893   3      
 894   3                                      return(0);
 895   3                              }
 896   2                      }
 897   1                      else
 898   1                      {
 899   2                              if(Page_Val==6) Test_Data[6]=Test_Data[5];
 900   2                              else Test_Data[5]=0;
 901   2                              //Test_Data[6]=d_v*24/40.95;
 902   2                              if((Test_Data[5]>=Comp_Data[10])&&(Test_Data[5]<=Comp_Data[11])) SetP_Data[4]=14;//ok
 903   2                              else SetP_Data[4]=13;//ng
 904   2                              Num_Convert(Test_Data[5],4);
 905   2                      //      Tests_Data(SetP_Data,5,6);
 906   2                              if((Page_Val==0)||(Page_Val==6)) Tests_Data(SetP_Data,5,6);
 907   2                              else if(Page_Val==3) Tests_Data(SetP_Data,5,7);
 908   2                              if(SetP_Data[4]==13)
 909   2                              {
 910   3                                      NG_Flag=1;
 911   3                                      IO_A&=0xF7;
 912   3                                      IO_C&=0xFD;
 913   3                              }
 914   2                              if((Test_Data[6]>=Comp_Data[12])&&(Test_Data[6]<Comp_Data[13])) SetP_Data[4]=14;//ok
 915   2                              else 
 916   2                              {
 917   3                                      SetP_Data[4]=13;//ng
 918   3                                      IO_A&=0xF7;
 919   3                                      IO_C&=0xFC;
 920   3                              }
 921   2                              Num_Convert(Test_Data[6],4);
 922   2                              //Tests_Data(SetP_Data,5,7);
 923   2                              if((Page_Val==0)||(Page_Val==6)) Tests_Data(SetP_Data,5,7);
C51 COMPILER V7.06   AD                                                                    08/06/2007 17:38:09 PAGE 16  

 924   2                              else if(Page_Val==3) Tests_Data(SetP_Data,5,8);
 925   2                              if((SetP_Data[4]==13)||(NG_Flag==1))
 926   2                              {
 927   3                                      IO_B=0xFF;
 928   3                                      //V_Value=0;
 929   3                                      DA_Convert(0);
 930   3                                      return(0);
 931   3                              }                       
 932   2                      }
 933   1                      IO_B|=0x08;
 934   1                      for(i=0;i<20;i++) Delay_1(250);
 935   1                      return(1);
 936   1              }
 937          
 938                  bit PDT_Test(void)
 939                  {
 940   1                      unsigned char i;
 941   1                      for(i=0;i<11;i++)
 942   1                      {
 943   2                              SetP_Data[i]=15;
 944   2                      }
 945   1                      Test_Data[7]=9999;
 946   1                      Test_Data[9]=9999;
 947   1              
 948   1                      IO_B&=0xF7;
 949   1                      AD_COM=0x0E;//coil cut on;
 950   1                      for(i=0;i<20;i++) Delay_1(250);
 951   1                      TMOD=0x22;//T1 IS Method 2; T0 is method 2;
 952   1                      TH0=T0_T_10;//10us
 953   1                      TL0=T0_T_10;    
 954   1                      T_Count=0;
 955   1                      DA_Convert(Comp_Data_T[0]*409.5/(2.4*MULTI_V));
 956   1                      for(i=0;i<20;i++) Delay_1(250); 
 957   1                      IO_B&=0x7F;     
 958   1                      for(i=0;i<20;i++) Delay_1(250); 
 959   1                      IO_B|=0x80;     
 960   1                      for(i=0;i<30;i++) Delay_1(250); 
 961   1                      IO_B&=0x7F;     
 962   1                      TR0=1;
 963   1                      while(!NO_TIME)
 964   1                      {
 965   2                              while(!TF0);
 966   2                              TF0=0;
 967   2                              T_Count++;
 968   2                              if(T_Count==9999) break;
 969   2                              //if(T_Count==2000) break;                      
 970   2                      }
 971   1                      TR0=0;
 972   1                      Test_Data[7]=T_Count*MULTI;
 973   1                      if((Test_Data[7]>(Comp_Data[14]*10))&&(Test_Data[7]<=(Comp_Data[15]*10))) SetP_Data[4]=14;//ok
 974   1                      else 
 975   1                      {
 976   2                              SetP_Data[4]=13;//ng
 977   2                              IO_A&=0xEF;
 978   2                              IO_C&=0xFD;
 979   2                      }
 980   1                      Num_Convert(Test_Data[7],4);
 981   1              //      Tests_Data(SetP_Data,5,8);
 982   1                      if((Page_Val==0)||(Page_Val==5)||(Page_Val==6)) Tests_Data(SetP_Data,5,8);
 983   1                      else if(Page_Val==4) Tests_Data(SetP_Data,5,4);
 984   1                      if(SetP_Data[4]==13)
 985   1                      {
C51 COMPILER V7.06   AD                                                                    08/06/2007 17:38:09 PAGE 17  

 986   2                              //IO_B|=0x88;
 987   2                              IO_B=0xFF;
 988   2                              AD_COM=0x0F;//coil cut off;
 989   2                              DA_Convert(0);
 990   2      
 991   2                              return(0);
 992   2                      }
 993   1                      for(i=0;i<20;i++) Delay_1(250);
 994   1      
 995   1                      T_Count=0;      
 996   1                      TH0=T0_T_10;//10us
 997   1                      TL0=T0_T_10;    
 998   1                      //DA_Convert(0);
 999   1                      IO_B|=0x80;     
1000   1                      TR0=1;
1001   1                      while(NO_TIME)
1002   1                      {
1003   2                              while(!TF0);
1004   2                              TF0=0;
1005   2                              T_Count++;
1006   2                              if(T_Count==9999) break;
1007   2                              //if(T_Count==2000) break;
1008   2                      }
1009   1                      TR0=0;
1010   1                      //AD_COM=0x0F;
1011   1                      Test_Data[9]=T_Count*MULTI;
1012   1                      if((Test_Data[9]>(Comp_Data[18]*10))&&(Test_Data[9]<=(Comp_Data[19]*10))) SetP_Data[4]=14;//ok
1013   1                      else SetP_Data[4]=13;//ng
1014   1                      Num_Convert(Test_Data[9],4);
1015   1                      //Tests_Data(SetP_Data,5,10);
1016   1                      if((Page_Val==0)||(Page_Val==5)||(Page_Val==6)) Tests_Data(SetP_Data,5,10);
1017   1                      else if(Page_Val==4) Tests_Data(SetP_Data,5,6);
1018   1                      if(SetP_Data[4]==13)
1019   1                      {
1020   2                              //IO_B|=0x88;
1021   2                              IO_B=0xFF;
1022   2                              AD_COM=0x0F;//coil cut off;
1023   2                              DA_Convert(0);
1024   2                              IO_A&=0xBF;
1025   2                              IO_C&=0xFD;
1026   2                              return(0);
1027   2                      }
1028   1                      for(i=0;i<20;i++) Delay_1(250);         
1029   1                      return(1);
1030   1              }
1031          
1032                  bit BT_Test(void)
1033                  {
1034   1                      bit B_Flag=1;
1035   1                      unsigned int y=0,i=0,m=0;
1036   1                      for(m=0;m<11;m++)
1037   1                      {
1038   2                              SetP_Data[m]=15;
1039   2                      }
1040   1                      Test_Data[8]=9999;
1041   1                      Test_Data[10]=9999;
1042   1                      TMOD=0x22;//T1 IS Method 2; T0 is method 2;
1043   1                      TH0=T0_T_30;//30us
1044   1                      TL0=T0_T_30;    
1045   1                      T_Count=0;
1046   1                      TR0=0;          
1047   1                      i=0;
C51 COMPILER V7.06   AD                                                                    08/06/2007 17:38:09 PAGE 18  

1048   1                      IO_B&=0x7F;
1049   1                      while(!NO_TIME)
1050   1                      {
1051   2                              i++;
1052   2                              if(i==30000)
1053   2                              {
1054   3                                      //IO_B=0xFF;
1055   3                                      //return(0);
1056   3                                      break;
1057   3                              }
1058   2      
1059   2                      }
1060   1                      TR0=1;
1061   1                      while(TR0)
1062   1                      {
1063   2                              if(NO_TIME&&B_Flag)
1064   2                              {
1065   3                                      B_Flag=!B_Flag;
1066   3                                      y=T_Count;
1067   3                              }
1068   2                      

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -