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

📄 main.lst

📁 应用案例
💻 LST
字号:
C51 COMPILER V7.07   MAIN                                                                  06/13/2008 13:33:18 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /////////////////////////////////////////////////////////////////////////// 
   2          /*************************************************************************/
   3          #include <string.h>
   4          #include <m500a.h>
   5          #include <main.h>
   6          #include <reg52.h>
   7          
   8          sbit   LED  =  P2^6;
   9          sbit   WARN =  P2^7;
  10          
  11          unsigned char length = 0,type = 1;
  12          unsigned char rcvdata[16] = {"                "};
  13          unsigned char timerout = 0;
  14          ////////////////////////////////////////////////////////////////////
  15          void    main (void)
  16          {
  17   1      //  unsigned char counter;
  18   1      
  19   1        unsigned char status1,x;
  20   1        unsigned char Snr_RC500[4];       // Serial Number of the MFRC500
  21   1        unsigned char cardserialno[4];
  22   1        unsigned char cardtype[2];
  23   1      
  24   1        P2 = 0x00;
  25   1        LED = 1;WARN = 1;
  26   1        init_lcd();
  27   1        clrram();
  28   1        timer_init();
  29   1        rs232_init();                                                                                                 
  30   1      
  31   1        line_disp(0,"*** 考勤系统 ***");
  32   1        line_disp(1,"----------------");
  33   1        line_disp(2,"--  指导老师  --");
  34   1        line_disp(3,"  刘盾  副教授  ");
  35   1      
  36   1        RC500Config();      
  37   1        PcdReadE2(8,4,Snr_RC500);
  38   1      //  rs232_send(Snr_RC500,4);
  39   1      
  40   1        delay_1s(1200);
  41   1        clrram();
  42   1        time_disp1(0);
  43   1        line_disp(1,"----------------");
  44   1        line_disp(2,"    初始完成    ");
  45   1        line_disp(3,"----------------");
  46   1      
  47   1        delay_1s(1200);
  48   1        clrram(); 
  49   1      
  50   1        time_disp2();
  51   1        line_disp(2,"----------------");
  52   1        line_disp(3,"    请放入卡    ");
  53   1        LED = 0;
  54   1        while(1)
  55   1          {                                                                                                                                                                                                                           
C51 COMPILER V7.07   MAIN                                                                  06/13/2008 13:33:18 PAGE 2   

  56   2               while(CardRequest(PICC_REQALL, cardtype)==MI_OK)
  57   2                  { 
  58   3                      status1=ReadCardNum(0,cardserialno);
  59   3                      if (status1 == MI_OK)
  60   3                              {
  61   4                              rs232_send(cardserialno,4);
  62   4                              LED = 1;
  63   4      
  64   4                                      clrram();
  65   4                                      time_disp1(1);
  66   4                                      line_disp(2,"----------------");
  67   4                                      TL0 = 0; TH0 = 0; ET0 = 1; TR0 = 1;
  68   4                                      while(type != 3)
  69   4                                      {
  70   5                                              if (timerout == 1)
  71   5                                              {
  72   6                                                      TR0 = 0;ET0 = 0;
  73   6                                                      WARN = 0;LED = 1;
  74   6                                                      line_disp(0,"----------------");
  75   6                                                      line_disp(1,"请检查串口连接情");
  76   6                                                      line_disp(2,"况以及软件设置!");
  77   6                                                      line_disp(3,"----------------");
  78   6                                              }
  79   5                                      }
  80   4                                      line_disp(1,rcvdata);
  81   4                                      while(type != 1);line_disp(3,rcvdata);
  82   4                                      TR0 = 0; ET0 = 0;
  83   4                                      if(!strcmp(rcvdata,"数据库无此卡信息"))
  84   4                                              {
  85   5                                                      WARN = 0;
  86   5                                                      delay_1s(1000);
  87   5                                                      WARN = 1;
  88   5                                              }
  89   4                                      for (x=0;x<16;x++)
  90   4                                              rcvdata[x] = ' ';                               
  91   4                              }
  92   3                      delay_1s(500);
  93   3                      LED = 0;
  94   3                      delay_1s(500);
  95   3                      WARN = 1;
  96   3                      clrram();
  97   3                      time_disp2();
  98   3                      line_disp(2,"----------------");        
  99   3                  line_disp(3,"    请放入卡    "); 
 100   3                  }
 101   2               time_disp2();
 102   2               delay_1s(50);
 103   2              }
 104   1      }
 105          
 106          extern unsigned char sendflag;
 107          void    rs232_rev(void) interrupt       4
 108          {
 109   1              if ( TI == 1 )
 110   1              {
 111   2                       TI = 0;
 112   2                       sendflag = 1;
 113   2              }
 114   1              if ( RI == 1 )
 115   1              {
 116   2                      if (SBUF == 0x30)
 117   2                              {
C51 COMPILER V7.07   MAIN                                                                  06/13/2008 13:33:18 PAGE 3   

 118   3                                      type ++;
 119   3                                      if (type == 4)
 120   3                                              { 
 121   4                                              type = 1;
 122   4                                              length = 0;
 123   4                                              }
 124   3                                      if( type == 2 )
 125   3                                              length = 10;
 126   3                                      else 
 127   3                                              length = 0;
 128   3                              }
 129   2                      else 
 130   2                              rcvdata[length++] = SBUF;
 131   2                      RI = 0;
 132   2              }       
 133   1      }
 134          unsigned char count=50;
 135          void    timer0(void)    interrupt       1
 136          {
 137   1              TH0 = 0; TL0 = 0;
 138   1              count --;
 139   1              if (!count)
 140   1              {
 141   2                      timerout = 1;
 142   2                      count = 20;     
 143   2              }
 144   1              else TR0 = 1;
 145   1      }
 146          //////////////////////////////////////////////////////////////////////////////


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    580    ----
   CONSTANT SIZE    =    153    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     20      13
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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