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

📄 menuprocess_dopt.lst

📁 pdh控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
              }
              #endif
 851          
 852          /*
 853          BYTE menu_2_als_set( BYTE FlashLcd )
 854          {
 855              SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
 856              BYTE xdata buffer[2][LCD_MAX_CASE];
 857              BYTE list_char = 7;
 858          
 859              KeyPro.keyEnter = key_go_next;
C51 COMPILER V7.20   MENUPROCESS_DOPT                                                      02/20/2006 10:14:03 PAGE 15  

 860              KeyPro.keyLeft = menu_set_left;
 861              KeyPro.keyRight = menu_set_rigth;
 862              KeyPro.keyCanncel = menu_1_preview;
 863          
 864              memcpy( &buffer[0][0], rownull, LCD_LAST_CASE );
 865              memcpy( &buffer[1][0], rownull, LCD_LAST_CASE );
 866              memcpy( &buffer[0][0], " Local ALS set ", LCD_LAST_CASE );
 867          
 868              if( FlashLcd == FLASH_SCREEN )
 869                          LcdDisplay_length( ROW_2, CHAR_0, rownull, LCD_MAX_CASE );
 870                  else
 871              {
 872                  if( psys->set_value )
 873                      list_char = 14;
 874              }
 875          
 876              get_als_status(  &buffer[1][0] );
 877          
 878              LcdDisplay_length( ROW_1, CHAR_0, &buffer[0][0], LCD_LAST_CASE );
 879              LcdDisplay_length( ROW_2, CHAR_0, &buffer[1][0], 7 );
 880              LcdDisplay_length( ROW_2, CHAR_8, &buffer[1][8], 6 );
 881          
 882              diaplay_char( ROW_2, list_char, LCD_PRINT_TRIANGLE );
 883                  if( list_char == 7 )
 884                      LcdDisplay_length( ROW_2, CHAR_14, &buffer[1][14], 1 );
 885                  else
 886                      LcdDisplay_length( ROW_2, CHAR_7, &buffer[1][7], 1 );
 887              return key_process_status( &KeyPro );
 888          }
 889          */
 890          
 891          BYTE menu_1_Protect( BYTE FlashLcd )
 892          {
 893   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
 894   1      
 895   1          psys->set_value = 0;
 896   1          return menu_main_show( " 1+1 protection ", FlashLcd );
 897   1      }
 898          
 899          void get_protect_status( BYTE *pbuffer )
 900          {
 901   1          BYTE flash_status;
 902   1              SYSTEM_DEVICE_STATUS xdata *psdev = &gsystemStauts;
 903   1      
 904   1          flash_status = flash_time(  );
 905   1      
 906   1          switch( psdev->local.protect_mode )
 907   1          {
 908   2          case IDB_FIBER_AUTO:
 909   2              flash_char_status( &pbuffer[2], "Auto", flash_status, 4 );
 910   2              flash_char_status( &pbuffer[8], "force", SHOW_CHAR_STATUS, 5 );
 911   2      
 912   2              break;
 913   2      
 914   2          case IDB_FIBER_MASTER:
 915   2          case IDB_FIBER_SLAVE:
 916   2              flash_char_status( &pbuffer[2], "Auto", SHOW_CHAR_STATUS, 4 );
 917   2              flash_char_status( &pbuffer[8], "force", flash_status, 5 );
 918   2              break;
 919   2          }
 920   1      }
 921          
C51 COMPILER V7.20   MENUPROCESS_DOPT                                                      02/20/2006 10:14:03 PAGE 16  

 922          BYTE menu_auto_yes_no( void )
 923          {
 924   1              SYSTEM_DEVICE_STATUS xdata *psdev = &gsystemStauts;
 925   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
 926   1      
 927   1          if( psys->yes_no == SET_YES )
 928   1          {
 929   2                      SetSystemProtectMode( IDB_FIBER_AUTO );
 930   2                      save_protect_mode( IDB_FIBER_AUTO );
 931   2          }
 932   1          return PREVIEW_MENU;
 933   1      }
 934          
 935          void show_protect_force( BYTE *pbuffer, BYTE FlashLcd, SYSTEM_INFOMATION *psys )
 936          {
 937   1          BYTE xdata flash_status;
 938   1          BYTE xdata list_char = 9;
 939   1              SYSTEM_DEVICE_STATUS xdata *psdev = &gsystemStauts;
 940   1      
 941   1          if( FlashLcd == FLASH_SCREEN )
 942   1              {
 943   2              LcdDisplay_length( ROW_2, CHAR_0, rownull, LCD_MAX_CASE );
 944   2              }
 945   1          if( psys->set_protect_value )
 946   1              list_char = 13;
 947   1      
 948   1          flash_status = flash_time(  );
 949   1      
 950   1          memcpy( pbuffer, "  Force:        ", LCD_LAST_CASE );
 951   1      
 952   1          switch( psdev->local.protect_mode )
 953   1          {
 954   2          case IDB_FIBER_AUTO:
 955   2              flash_char_status( &pbuffer[8], "M   S", SHOW_CHAR_STATUS, 5 );
 956   2              break;
 957   2      
 958   2          case IDB_FIBER_MASTER:
 959   2              flash_char_status( &pbuffer[8], "M", flash_status, 1 );
 960   2              flash_char_status( &pbuffer[12], "S", SHOW_CHAR_STATUS, 1 );
 961   2              break;
 962   2      
 963   2          case IDB_FIBER_SLAVE:
 964   2              flash_char_status( &pbuffer[8], "M", SHOW_CHAR_STATUS, 1 );
 965   2              flash_char_status( &pbuffer[12], "S", flash_status, 1 );
 966   2              break;
 967   2          }
 968   1      
 969   1          LcdDisplay_length( ROW_2, CHAR_0, pbuffer, 9 );
 970   1          LcdDisplay_length( ROW_2, CHAR_10, &pbuffer[10], 3 );
 971   1          diaplay_char( ROW_2, list_char, LCD_PRINT_TRIANGLE );
 972   1              if( list_char == 9 )
 973   1                  LcdDisplay_length( ROW_2, CHAR_13, rownull, 1 );
 974   1              else
 975   1                  LcdDisplay_length( ROW_2, CHAR_9, rownull, 1 );
 976   1      
 977   1      }
 978          
 979          BYTE menu_force_yes_no( void )
 980          {
 981   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
 982   1              SYSTEM_DEVICE_STATUS xdata *psdev = &gsystemStauts;
 983   1              BYTE mode;
C51 COMPILER V7.20   MENUPROCESS_DOPT                                                      02/20/2006 10:14:03 PAGE 17  

 984   1      
 985   1          if( psys->yes_no == SET_YES )
 986   1          {
 987   2              if( gSystemInfo.set_protect_value == 0 )
 988   2                              mode = IDB_FIBER_MASTER;
 989   2              else
 990   2                              mode = IDB_FIBER_SLAVE;
 991   2                      SetSystemProtectMode( mode );
 992   2                      save_protect_mode( mode );
 993   2          }
 994   1          return PREVIEW_MENU;
 995   1      }
 996          BYTE menu_4_protect_set( BYTE FlashLcd )
 997          {
 998   1          BYTE xdata buffer[2][LCD_MAX_CASE];
 999   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
1000   1      
1001   1          KeyPro.keyEnter = menu_force_yes_no;
1002   1          KeyPro.keyLeft = menu_yes_no_left;
1003   1          KeyPro.keyRight = menu_yes_no_rigth;
1004   1          KeyPro.keyCanncel = menu_1_preview;
1005   1          memcpy( &buffer[0], rownull, LCD_MAX_CASE );
1006   1          memcpy( &buffer[1], rownull, LCD_MAX_CASE );
1007   1      
1008   1          if( gSystemInfo.set_protect_value == 0 )
1009   1          {
1010   2              LcdDisplay_length( ROW_1, CHAR_0, "  Force master  ", LCD_MAX_CASE );
1011   2          }
1012   1          else
1013   1          {
1014   2              LcdDisplay_length( ROW_1, CHAR_0, "  Force slave   ", LCD_MAX_CASE );
1015   2          }
1016   1          yes_no_display( FlashLcd, psys );
1017   1      
1018   1          return key_process_status( &KeyPro );
1019   1      }
1020          
1021          BYTE menu_protect_set_left( void )
1022          {
1023   1           if( gSystemInfo.set_protect_value )
1024   1                gSystemInfo.set_protect_value = 0;
1025   1          return NOCHANGE_MENU;
1026   1      }
1027          
1028          BYTE menu_protect_set_rigth( void )
1029          {
1030   1           if( gSystemInfo.set_protect_value == 0 )
1031   1                gSystemInfo.set_protect_value = 1;
1032   1          return NOCHANGE_MENU;
1033   1      }
1034          
1035          BYTE menu_3_protect_set( BYTE FlashLcd )
1036          {
1037   1          BYTE xdata buffer[2][LCD_MAX_CASE];
1038   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
1039   1      
1040   1          if( gSystemInfo.set_value == 0 )
1041   1          {
1042   2              KeyPro.keyEnter = menu_auto_yes_no;
1043   2              KeyPro.keyLeft = menu_yes_no_left;
1044   2              KeyPro.keyRight = menu_yes_no_rigth;
1045   2              KeyPro.keyCanncel = menu_1_preview;
C51 COMPILER V7.20   MENUPROCESS_DOPT                                                      02/20/2006 10:14:03 PAGE 18  

1046   2              memcpy( &buffer[0], " Auto protection ", LCD_MAX_CASE );
1047   2              LcdDisplay_length( ROW_1, CHAR_0, &buffer[0][0], LCD_MAX_CASE );
1048   2              yes_no_display( FlashLcd, psys );
1049   2          }
1050   1          else
1051   1          {
1052   2              KeyPro.keyEnter = key_go_next;
1053   2              KeyPro.keyLeft = menu_protect_set_left;
1054   2              KeyPro.keyRight = menu_protect_set_rigth;
1055   2              KeyPro.keyCanncel = menu_1_preview;
1056   2              memcpy( &buffer[0], "Force protection", LCD_MAX_CASE );
1057   2              LcdDisplay_length( ROW_1, CHAR_0, &buffer[0][0], LCD_MAX_CASE );
1058   2              show_protect_force( &buffer[1], FlashLcd, psys );
1059   2          }
1060   1      
1061   1          return key_process_status( &KeyPro );
1062   1      }
1063          
1064          BYTE menu_2_protect_set( BYTE FlashLcd )
1065          {
1066   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
1067   1          BYTE xdata buffer[2][LCD_MAX_CASE];
1068   1          BYTE list_char = 6;
1069   1      
1070   1              psys->set_protect_value = 0;
1071   1          KeyPro.keyEnter = key_go_next;
1072   1          KeyPro.keyLeft = menu_set_left;
1073   1          KeyPro.keyRight = menu_set_rigth;
1074   1          KeyPro.keyCanncel = menu_1_preview;
1075   1      
1076   1          memcpy( &buffer[0][0], rownull, LCD_LAST_CASE );
1077   1          memcpy( &buffer[1][0], rownull, LCD_LAST_CASE );
1078   1          memcpy( &buffer[0][0], " 1+1 protection ", LCD_MAX_CASE );
1079   1      
1080   1          get_protect_status( &buffer[1][0] );
1081   1      
1082   1          if( FlashLcd == FLASH_SCREEN )
1083   1              {
1084   2                  LcdDisplay_length( ROW_2, CHAR_0, rownull, LCD_LAST_CASE );
1085   2              }
1086   1          if( psys->set_value )
1087   1              list_char = 13;
1088   1          LcdDisplay_length( ROW_1, CHAR_0, &buffer[0][0], LCD_MAX_CASE );
1089   1          LcdDisplay_length( ROW_2, CHAR_0, &buffer[1][0], 6 );
1090   1          LcdDisplay_length( ROW_2, CHAR_7, &buffer[1][7], 6 );
1091   1          diaplay_char( ROW_2, list_char, LCD_PRINT_TRIANGLE );
1092   1              if( list_char == 6 )
1093   1                  LcdDisplay_length( ROW_2, CHAR_13, rownull, 1 );
1094   1              else
1095   1                  LcdDisplay_length( ROW_2, CHAR_6, rownull, 1 );
1096   1      
1097   1          return key_process_status( &KeyPro );
1098   1      }
1099          
1100          BYTE menu_1_loop_set( BYTE FlashLcd )
1101          {
1102   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
1103   1      
1104   1          if( FlashLcd == FLASH_SCREEN )
1105   1          {
1106   2              psys->yes_no = SET_YES;
1107   2              }
C51 COMPILER V7.20   MENUPROCESS_DOPT                                                      02/20/2006 10:14:03 PAGE 19  

1108   1          return menu_main_show( "   Loop set    ", FlashLcd );
1109   1      }
1110          
1111          BYTE menu_e1_loop_yes_no( void )
1112          {
1113   1          SYSTEM_INFOMATION xdata *psys = &gSystemInfo;
1114   1              SYSTEM_DEVICE_STATUS xdata *psdev = &gsystemStauts;
1115   1              BYTE status;
1116   1      
1117   1          if( psys->yes_no == SET_YES )
1118   1          {
1119   2                      status = (psdev->remote.e1_status[psys->e1_number-1]&(~E1_NOLOOP))>>2;
1120   2              if( status == IDB_E1_NOLOOP )
1121   2                      {
1122   3                      psys->setbuffer[0] |= BIT0<<(psys->e1_number-1);
1123   3                      psdev->remote.e1_status[psys->e1_number-1] |= E1_LOOP;
1124   3                      }
1125   2              else
1126   2                      {
1127   3                      psdev->remote.e1_status[psys->e1_number-1] &= E1_NOLOOP;
1128   3                              psys->setbuffer[0] &= ~( BIT0<<(psys->e1_number-1) );
1129   3                      }
1130   2                  WriteChip( SOFTLOOP_ADDR, psys->setbuffer[0] );
1131   2                  psys->sendrc7017 = SETCMDSERIAL;
1132   2                  psys->SetCommandCounter = 0;
1133   2          }

⌨️ 快捷键说明

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