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

📄 authorize_process.lst

📁 stc-isp开发板驱动程序
💻 LST
字号:
C51 COMPILER V7.06   AUTHORIZE_PROCESS                                                     09/13/2005 20:39:39 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE AUTHORIZE_PROCESS
OBJECT MODULE PLACED IN authorize_process.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE authorize_process.c OMF2 BROWSE DEBUG

stmt level    source

   1          #include <config.h>
   2          
   3          #define IN_AUTHORIZE
   4          
   5          unsigned int xdata exhaust_number=0;
   6          unsigned int xdata authorize_number=0;
   7          unsigned char xdata display_alter=0,Authorize_f=0,wrong_LED_f=0; 
   8          
   9          void Authorize_process(void)
  10          {if((authorize_number)>=0x01)
  11   1         {if(Authorize_f)
  12   2                {rs232_senddata(0x1c);                  //发送一次激活码
  13   3                 rs232_senddata(0x3f);
  14   3                 rs232_senddata(0x46);
  15   3                 Authorize_f=0x00;                      //按键一次只发送一次激活码
  16   3             wrong_LED=0x00;                  //点亮激活失败的指示灯 
  17   3                 right_LED=0x01;                  //熄灭成功激活的指示灯 
  18   3                 }
  19   2              }
  20   1       }
  21          
  22          
  23          
  24          void Rs232rece_process(void)
  25          {static unsigned char idata k[3];
  26   1      
  27   1        if(rs232_getdata(0x00)!=0x00)         //当串口就收到数据才校验同步
  28   1               {k[0]=k[1];
  29   2                k[1]=k[2];
  30   2                k[2]=rs232_getdata(0x01);
  31   2                if(rs232_getdata(0x01)==0x55)
  32   2                   k[2]=0x00;                            //排除卡带机程序中的0x55同步命令 
  33   2                if((k[0]==0x5a)&&(k[1]==0x66)&&(k[2]==0xa5))  //获得1000片的激活资格 
  34   2               {authorize_number=1000;
  35   3                        rs232_senddata(0x5a);
  36   3                        rs232_senddata(0x33);
  37   3                        rs232_senddata(0xa5);
  38   3                    #if  EEPROM_USING
  39   3                         eeprom_operatemode=0x02; //将要记忆的内容写入EEPROM
  40   3                         eeprom_process();        // EEPROM的读写
  41   3                #endif
  42   3                   }
  43   2                if((k[0]==0x5a)&&(k[1]==0x77)&&(k[2]==0xa5))  //清空已经激活的数目 
  44   2               {exhaust_number=0x00;
  45   3                        rs232_senddata(0x5a);
  46   3                        rs232_senddata(0x22);
  47   3                        rs232_senddata(0xa5);
  48   3                    #if  EEPROM_USING
  49   3                         eeprom_operatemode=0x02; //将要记忆的内容写入EEPROM
  50   3                         eeprom_process();        // EEPROM的读写
  51   3                #endif
  52   3                   }
  53   2            else if((k[0]==0x5a)&&(k[1]==0x88)&&(k[2]==0xa5))  //获得激活反馈  
  54   2                    {if(exhaust_number<=9999)
  55   3                           {exhaust_number++;
C51 COMPILER V7.06   AUTHORIZE_PROCESS                                                     09/13/2005 20:39:39 PAGE 2   

  56   4                                    right_LED=0x00;            //点亮成功激活的指示灯 
  57   4                                        wrong_LED=0x01;                //熄灭激活失败的指示灯 
  58   4                                        wrong_LED_f=0x00;              
  59   4                                    }
  60   3                         else 
  61   3                            exhaust_number=0x00;
  62   3                         if(authorize_number>=0x01)
  63   3                            authorize_number--;
  64   3                             else 
  65   3                                wrong_LED=0x00;        //点亮激活失败的指示灯 
  66   3                         #if  EEPROM_USING
  67   3                              eeprom_operatemode=0x02; //将要记忆的内容写入EEPROM
  68   3                              eeprom_process();        // EEPROM的读写
  69   3                     #endif
  70   3                         }
  71   2            }
  72   1        if(key_key==0x82)                             //检测到发送激活码的命令 
  73   1           {Authorize_f=0x01;
  74   2                //rs232_senddata(0x82);
  75   2                key_key=0x00;
  76   2                }
  77   1        else if(key_key==0x81)                                //检测到按键显示的切换
  78   1                {display_alter++;
  79   2                         //rs232_senddata(0x81);
  80   2                     key_key=0x00;
  81   2                     }
  82   1        if(display_alter%2)
  83   1           {g_display_state=0x00;        //LED显示剩下的数目
  84   2                authorize_LED=0;                 //点亮表示剩下可烧芯片数目的指示灯
  85   2                exhaust_LED=1;                   //熄灭已烧芯片数目的指示灯
  86   2                }
  87   1        else
  88   1           {g_display_state=0x01;    //LED显示已烧写数目      
  89   2                exhaust_LED=0;                   //点亮已烧芯片数目的指示灯
  90   2                authorize_LED=1;                 //熄灭表示剩下可烧芯片数目的指示灯
  91   2                }
  92   1       }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    342    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =      7    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =      3    ----
   BIT SIZE         =   ----    ----
   EDATA SIZE       =   ----    ----
   HDATA SIZE       =   ----    ----
   XDATA CONST SIZE =   ----    ----
   FAR CONST SIZE   =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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