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

📄 syssetup.lst

📁 灭火控制盘(XMP4-2)
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V8.02   SYSSETUP                                                              01/30/2008 15:09:51 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE SYSSETUP
OBJECT MODULE PLACED IN syssetup.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE syssetup.c LARGE BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //*************************************************************************
   2          //**模 块 名:syssetup.c
   3          //**说    明:系统设置功能函数
   4          //*************************************************************************
   5          #include <AT89x55.H>
   6          #include <INTRINS.H>
   7          #include <STRING.H>
   8          #include "main.h"
   9          //*************************************************************************
  10          //**函 数 名:Sys_Setup
  11          //**输    入:无
  12          //**输    出:无
  13          //**功能描述:系统设置
  14          //*************************************************************************
  15          void Sys_Setup()
  16          {
  17   1       uchar xdata fun_num=0;
  18   1       uchar xdata input_password=0;
  19   1       uchar xdata password_err=0;
  20   1       EA=1;
  21   1       Clr_Scr(0);
  22   1       fun_num=1;
  23   1       if(!PassWord_OK())
  24   1          {
  25   2           Clr_Scr(0);
  26   2           Disp_Setup_Menu(fun_num);
  27   2           }
  28   1       else
  29   1          {
  30   2           return;
  31   2           }
  32   1       MenuCount=3000; //关闭菜单计数
  33   1       while(1)
  34   1            {
  35   2             key_num=0xff;
  36   2             Read_Key();
  37   2             if((MenuCount == 1)||(key_num==SETUP))
  38   2                {
  39   3                 //回到正常状态下
  40   3                 if(machine_status != 0x10)have_report = 1;
  41   3                 break;
  42   3                 }
  43   2             if(key_num==DOWN)
  44   2                {
  45   3                 fun_num++;
  46   3                 if(fun_num>3) fun_num=1;
  47   3                 Disp_Setup_Menu(fun_num);
  48   3                 }
  49   2             else
  50   2                if(key_num==UP)
  51   2                   {
  52   3                    fun_num--;
  53   3                    if(fun_num<1) fun_num=3;
  54   3                    Disp_Setup_Menu(fun_num);
  55   3                    }
C51 COMPILER V8.02   SYSSETUP                                                              01/30/2008 15:09:51 PAGE 2   

  56   2             else
  57   2                if(key_num==OK)
  58   2                   {
  59   3                    //进入到设置时间功能
  60   3                    if(fun_num==1) setup_clock();
  61   3                    //进入到设置延时时间功能
  62   3                    if(fun_num==2) setup_delay_clock();
  63   3                    //进入到设置所带区数
  64   3                    if(fun_num==3) setup_qu_online();
  65   3                    Clr_Scr(0);
  66   3                    Disp_Setup_Menu(fun_num);
  67   3                    }
  68   2             }
  69   1      }
  70          //*************************************************************************
  71          //**函 数 名:PassWord_OK
  72          //**输    入:无
  73          //**输    出:无
  74          //**功能描述:
  75          //**          1.读取密码
  76          //*************************************************************************
  77          uchar PassWord_OK(void)
  78          {
  79   1      uchar xdata fun_num=0;
  80   1      uchar xdata password_err=1;
  81   1      uchar xdata input_password=0;
  82   1      Clr_Scr(0);
  83   1      Disp_Password_Menu(fun_num);
  84   1      while(1)
  85   1            {
  86   2             key_num=0xff;
  87   2             Read_Key();
  88   2             if(key_num == DOWN)
  89   2                {
  90   3                 input_password|=(0x01<<(4-fun_num-1));
  91   3                 fun_num++;
  92   3                 if(fun_num==4)
  93   3                    {
  94   4                     if((input_password&0x0f)==(PASSWORD&0x0f))
  95   4                        {
  96   5                         Disp_Password_Menu(fun_num);
  97   5                         password_err=0;
  98   5                         DelayMS(10);
  99   5                         break;
 100   5                         }
 101   4                     else
 102   4                        {
 103   5                         Disp_Password_Menu(fun_num);
 104   5                         DelayMS(10);
 105   5                         fun_num=0;
 106   5                         Clr_Scr(0);
 107   5                         Disp_Password_Menu(fun_num);
 108   5                         continue;
 109   5                         }
 110   4                     }
 111   3                 Disp_Password_Menu(fun_num);
 112   3                 }
 113   2             else
 114   2                if(key_num == UP)
 115   2                   {
 116   3                    input_password&=(0xFE<<(4-fun_num-1));
 117   3                    fun_num++;
C51 COMPILER V8.02   SYSSETUP                                                              01/30/2008 15:09:51 PAGE 3   

 118   3                    if(fun_num==4)
 119   3                       {
 120   4                        if((input_password&0x0f)==(PASSWORD&0x0f))
 121   4                           {
 122   5                            Disp_Password_Menu(fun_num);
 123   5                            password_err=0;
 124   5                            DelayMS(10);
 125   5                            break;
 126   5                            }
 127   4                        else
 128   4                           {
 129   5                            Disp_Password_Menu(fun_num);
 130   5                            DelayMS(10);
 131   5                            Clr_Scr(0);
 132   5                            fun_num=0;
 133   5                            Disp_Password_Menu(fun_num);
 134   5                            continue;
 135   5                            }
 136   4                        }
 137   3                    Disp_Password_Menu(fun_num);
 138   3                    }
 139   2               else
 140   2                  if(key_num == SETUP)
 141   2                     {
 142   3                      if(machine_status!=0x10)have_report=1;
 143   3                      password_err=1;
 144   3                      break;
 145   3                      }
 146   2               }
 147   1      return password_err;
 148   1      }
 149          //*************************************************************************
 150          //**函 数 名:Disp_Password_Menu
 151          //**输    入:无
 152          //**输    出:无
 153          //**功能描述:
 154          //**          1.显示输入密码的界面
 155          //*************************************************************************
 156          void Disp_Password_Menu(uchar number)
 157          {
 158   1          uchar xdata iii;
 159   1          HzDisp1216(2,20,hz_mi,0);
 160   1          HzDisp1216(2,40,hz_ma,0);
 161   1          for(iii=0;iii<number;iii++)
 162   1              {
 163   2               HzDisp1216(4,60+iii*12,hz_xinghao,0);
 164   2               }
 165   1          //显示“按设置键退出”
 166   1          HzDisp1216(6,0+55,hz_an,0);
 167   1          HzDisp1216(6,12+55,hz_she,0);
 168   1          HzDisp1216(6,24+55,hz_zhi3,0);
 169   1          HzDisp1216(6,36+55,hz_jian3,0);
 170   1          HzDisp1216(6,48+55,hz_tui,0);
 171   1          HzDisp1216(6,60+55,hz_chu,0);
 172   1      }
 173          //*************************************************************************
 174          //**函 数 名:Disp_Setup_Menu
 175          //**输    入:
 176          //**     dpoint:反白显示的位置号
 177          //**输    出:无
 178          //**功能描述:
 179          //**          1.显示系统菜单
C51 COMPILER V8.02   SYSSETUP                                                              01/30/2008 15:09:51 PAGE 4   

 180          //*************************************************************************
 181          void Disp_Setup_Menu(uchar dpoint)
 182          {
 183   1       switch(dpoint)
 184   1            {
 185   2             case 1:Disp_Setup_Menu_One(1,0,0);
 186   2                    break;
 187   2             case 2:Disp_Setup_Menu_One(0,1,0);
 188   2                    break;
 189   2             case 3:Disp_Setup_Menu_One(0,0,1);
 190   2                    break;
 191   2             default:break;
 192   2             }
 193   1      }
 194          //*************************************************************************
 195          //**函 数 名:Disp_Setup_Menu
 196          //**输    入:
 197          //**     ONp:0正常 1反白 显示
 198          //**     TWp:0正常 1反白 显示
 199          //**     THp:0正常 1反白 显示
 200          //**     FOp:0正常 1反白 显示
 201          //**     FRp:0正常 1反白 显示
 202          //**输    出:无
 203          //**功能描述:
 204          //**          1.显示系统菜单数据
 205          //*************************************************************************
 206          void Disp_Setup_Menu_One(bit ONp,bit TWp,bit THp)
 207          {
 208   1          uchar xdata i;
 209   1          //时间设置
 210   1              HzDisp1216(0,0,hz_number1,ONp);
 211   1          HzDisp1216(0,12,hz_shi3,ONp);
 212   1          HzDisp1216(0,24,hz_jian2,ONp);
 213   1          HzDisp1216(0,36,hz_she,ONp);
 214   1          HzDisp1216(0,48,hz_zhi3,ONp);
 215   1          //延时设置
 216   1              HzDisp1216(2,0,hz_number2,TWp);
 217   1          HzDisp1216(2,12,hz_yan,TWp);
 218   1          HzDisp1216(2,24,hz_shi3,TWp);
 219   1          HzDisp1216(2,36,hz_shi3,TWp);
 220   1          HzDisp1216(2,48,hz_jian2,TWp);
 221   1          //在线开关
 222   1              for(i=0;i<5;i++)
 223   1              HzDisp1216(4,i*12+1,hz_space,THp);
 224   1          for(i=0;i<5;i++)
 225   1              HzDisp1216(4,i*12+3,hz_space,THp);
 226   1          HzDisp1216(4,0,hz_number3,THp);
 227   1          HzDisp1216(4,12,hz_zai,THp);
 228   1          HzDisp1216(4,24,hz_xian,THp);
 229   1          HzDisp1216(4,36,hz_shu,THp);
 230   1          HzDisp1216(4,48,hz_liang,THp);
 231   1      }
 232          //*************************************************************************
 233          //**函 数 名:setup_qu_online
 234          //**输    入:无
 235          //**输    出:无
 236          //**功能描述:灭火区设置菜单
 237          //*************************************************************************
 238          void setup_qu_online(void)
 239          {
 240   1          uchar xdata fun_num,on_off;
 241   1          fun_num=1;
C51 COMPILER V8.02   SYSSETUP                                                              01/30/2008 15:09:51 PAGE 5   

 242   1          on_off=1;
 243   1          ReadSysSetup();
 244   1          Clr_Scr(0);
 245   1          HzDisp1216(0,12,hz_she,0);
 246   1          HzDisp1216(0,25,hz_zhi3,0);
 247   1          HzDisp1216(0,38,hz_mie,0);
 248   1          HzDisp1216(0,51,hz_huo,0);
 249   1          HzDisp1216(0,64,hz_qu,0);
 250   1          HzDisp1216(0,77,hz_de1,0);
 251   1          HzDisp1216(0,90,hz_kai,0);
 252   1          HzDisp1216(0,103,hz_guan,0);
 253   1          //一 到 四 区
 254   1          HzDisp1216(2,12,hz_yi ,0);

⌨️ 快捷键说明

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