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

📄 earkey.lst

📁 attendace system on 8051 chipset from intel.
💻 LST
📖 第 1 页 / 共 2 页
字号:
              
                      if(RI)
                      {
                              if(!fim10mode)
                              {
                                      ET0 = 0;
              
                                      ch = SBUF;
              
                                      if(ch == '[')
                                      {
                                              index = 0;
                                      }
                                      else if(ch == ']')
                                      {
                                              _data[index] = 0;
                                              processdata();
                                      }
                                      else
                                      {
                                              _data[index] = ch;
                                              index++;
                                      }
              
                                      RI = 0;
              
                                      inittimer0();
                              }
                      }
              } */
 347          
 348          /*void inittimer0()
              {
              	TMOD = (TMOD & 0xF0) | 0x01;
              	ET0 = 1;                    
              	TR0 = 1;                    
              	EA = 1;                     
              }
              
              void __transmit(char *str)
              {
                      while(*str)
                      {
                              SBUF = *str;
                              while(!TI);
                              TI = 0;
                              str++;
                      }
              }
C51 COMPILER V3.20,  SN-50202956  EARKEY                                                   12/27/05  23:10:13  PAGE 7   

              
              void transmit(char *str)
              {
                      while(*str)
                      {
                              SBUF = *str;
                              while(!TI);
                              TI = 0;
                              str++;
                      }
              }
              
              //For FIM10 module
              
              void transmitpacket(    char port, 
                                      char command,
                                      char param1,
                                      char param2,
                                      char data_size,
                                      char error,
                                      char header_checksum,
                                      char *packet_data,
                                      char data_checksum)
              {
                      char i;
                      long d_cksm = 0;
              
                      if(port == 1) //FIM10 module
                      {
                              fim10mode = 1;
              
                              COM_SELECT = 0;
                      }
              
                      SBUF = 0x7E;while(!TI);TI = 0;
              
                      //Command
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = command;while(!TI);TI = 0;
              
                      //Parameter1
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = param1;while(!TI);TI = 0;
              
                      //Parameter2
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = param2;while(!TI);TI = 0;
              
                      //Data size
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = data_size;while(!TI);TI = 0;
              
                      //Error
                      SBUF = 0x00;while(!TI);TI = 0;
C51 COMPILER V3.20,  SN-50202956  EARKEY                                                   12/27/05  23:10:13  PAGE 8   

                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
              
                      //Header Checksum
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = 0x00;while(!TI);TI = 0;
                      SBUF = command + param1 + param2 + data_size + error;
                      while(!TI);TI = 0;
              
                      //Data 
                      if(data_size > 0)
                      {
                              for(i = 0; packet_data[i] != '\0'; i++)
                              {
                                      SBUF = packet_data[i];
                                      while(!TI);
                                      TI = 0;
              
                                      d_cksm += packet_data[i];
                              }
              
                              for(; i < data_size; i++)
                              {
                                      SBUF = 0x00;
                                      while(!TI);
                                      TI = 0;
                              }
              
                              //Data Checksum
                              SBUF = (d_cksm & 0xFF000000) >> 24;while(!TI);TI = 0;
                              SBUF = (d_cksm & 0x00FF0000) >> 16;while(!TI);TI = 0;
                              SBUF = (d_cksm & 0x0000FF00) >> 8;while(!TI);TI = 0;
                              SBUF = (d_cksm & 0x000000FF) >> 0;while(!TI);TI = 0;
                      }
              
                      if(port == 1)
                      {
                              COM_SELECT = 1;
              
                              fim10mode = 0;
                      }
              }
              
              char getserch()
              {
                      char ch;
              
                      while(!RI);
                      ch = SBUF;
                      RI = 0;
              
                      return ch;
              }
              
              void receivepacket(     char port,
                                      char *command,
                                      char *param1,
                                      char *param2,
                                      char *data_size,
                                      char *error,
C51 COMPILER V3.20,  SN-50202956  EARKEY                                                   12/27/05  23:10:13  PAGE 9   

                                      char *header_checksum,
                                      char *packet_data,
                                      char *data_checksum)
              {
                      char ch;
                      char i = 0;
              
                      if(port == 1)
                      {
                              fim10mode = 1;
              
                              COM_SELECT = 0;
                      }
              
                      while(1)
                      {
                              ch = getserch();
              
                              if(ch == 0x7E)break;
                      }
              
                      //Command
                      for(i = 0; i < 4; i++)
                      {
                              ch = getserch();
                      }
                      *command = ch;
                         
                      //Parameter1
                      for(i = 0; i < 4; i++)
                      {
                              ch = getserch();
                      }
                      *param1 = ch;
              
                      //Parameter2
                      for(i = 0; i < 4; i++)
                      {
                              ch = getserch();
                      }
                      *param2 = ch;
              
                      //Data size
                      for(i = 0; i < 4; i++)
                      {
                              ch = getserch();
                      }
                      *data_size = ch;
              
                      //Error
                      for(i = 0; i < 4; i++)
                      {
                              ch = getserch();
                      }
                      *error = ch;
              
                      //Header checksum
                      for(i = 0; i < 4; i++)
                      {
                              ch = getserch();
                      }
                      *header_checksum = ch;
C51 COMPILER V3.20,  SN-50202956  EARKEY                                                   12/27/05  23:10:13  PAGE 10  

              
                      if(*data_size > 0)
                      {
                              *data_checksum = 0;
                              for(i = 0; i < *data_size; i++)
                              {
                                      packet_data[i] = getserch();
                              }
              
                              for(i = 0; i < 4; i++)
                              {
                                      ch = getserch();
                              }
                              *data_checksum = ch;
                      }
              
                      if(port == 1)
                      {
                              COM_SELECT = 1;
              
                              fim10mode = 0;
                      }
              } */
 575          
 576          void main()
 577          {
 578   1              //char j;
 579   1              int x = 0;
 580   1              //char i;
 581   1              int y = 3;
 582   1              char text[15];
 583   1              init89c51rd2(BAUD_RATE_9600);
 584   1              
 585   1              ENABLE_ONCHIP_XRAM();
 586   1           
 587   1              initlcd();
 588   1      
 589   1              delay(25000);
 590   1      
 591   1      	clearlcd();
 592   1      
 593   1              lcddisplaybmp(0, 0, JBB, JBB_BMP_COLS, JBB_BMP_ROWS, INVERTED_MODE);
 594   1              delay(25000);
 595   1              delay(25000);
 596   1              delay(25000);
 597   1              delay(25000);
 598   1              delay(25000);
 599   1      
 600   1              clearlcd();
 601   1      
 602   1              lcddisplaystr(2 * 8, 2, "HELLO WORLD", NORMAL_MODE);
 603   1              delay(25000);
 604   1              delay(25000);
 605   1              delay(25000);
 606   1              delay(25000);
 607   1              delay(25000);
 608   1              lcddisplaystr(2 * 8, 2, "KEYBOARD TEST", NORMAL_MODE);
 609   1      
 610   1              delay(25000);
 611   1              delay(25000);
 612   1              delay(25000);
 613   1              delay(25000);
C51 COMPILER V3.20,  SN-50202956  EARKEY                                                   12/27/05  23:10:13  PAGE 11  

 614   1              
 615   1      	while(1)
 616   1      	{
 617   2                   text[x] = getkey();
 618   2                   text[x + 1] = '\0';
 619   2                   clearlcd();
 620   2                   lcddisplaystr(0 * 8, 1, "Char received", NORMAL_MODE);
 621   2                   lcddisplaystr(0 * 8, 3, text, NORMAL_MODE);
 622   2                   x++;
 623   2                   if(x >= 15)x = 0;
 624   2              }
 625   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2109    ----
   CONSTANT SIZE    =   2154    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      4      87
   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 + -