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

📄 serial.lst

📁 15693 hf reader 伟根26接口
💻 LST
字号:
C51 COMPILER V7.09   SERIAL                                                                09/11/2007 09:30:27 PAGE 1   


C51 COMPILER V7.09, COMPILATION OF MODULE SERIAL
OBJECT MODULE PLACED IN serial.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE serial.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include "typedef.h"
   2          #include "crc16.h"
   3          #include "ll.h"
   4          /*
   5          void serial(void) interrupt 4 using 1
   6          {
   7                  if(RI)
   8                  {
   9                          RI =0;
  10                          if(recv_len == 0 )
  11                          {
  12                                  recv_len = SBUF;
  13                                  if(recv_len > 4)                   //接收数至少要有5个字节
  14                                  {
  15                                          p_rpc   =0;
  16                                          pcdata[0] = SBUF;
  17                                          b_pcend = 0;
  18                                          recv_len --; p_rpc++;
  19                                          b_recTime = 1; t_recTime = 0;  //接收限时
  20                                  }
  21                          }
  22                          else
  23                          {       
  24                                  pcdata[p_rpc] = SBUF;
  25                                  p_rpc ++;
  26                                  recv_len--;                     
  27                                  if(recv_len == 0) 
  28                                  {
  29                                          b_pcend = 1;
  30                                          b_recTime = 0; t_recTime = 0;
  31                                  }
  32                          }
  33                  }
  34          }
  35          */
  36          /*
  37          uchar verifyRd(void)   
  38          {
  39                  uchar type = 0;                                         //假定校验正确
  40          
  41                  if( deviceAddr == pcdata[1] ){ type = 1;}       //地址合法
  42                  else if(deviceAddr == 0xfe)  { type = 2;}     //广播地址
  43                  else if(deviceAddr == 0xff)  { type = 3;}     
  44                  else                      { type = 0;}
  45                  
  46                  if(type)
  47                  {   
  48                     if(!chkCRC_re(pcdata,pcdata[0]))             //CRC校验正确
  49                     {   type = 0;
  50                     }
  51                  }                                    
  52             return (type);                                                                                               
  53          }
  54          */
  55          /**********************************************/
C51 COMPILER V7.09   SERIAL                                                                09/11/2007 09:30:27 PAGE 2   

  56          /*
  57          void send2main(void)
  58          {
  59                  uchar i,len;    
  60                  ES=0;
  61                  len = pcdata[0];
  62                  for(i=0;i<len;i++)
  63                  {       
  64                          SBUF=pcdata[i];                                                 //发送数据
  65                          while(TI==0);
  66                          TI=0; 
  67                  }
  68                  ES=1;
  69          }
  70          */
  71          
  72          ///////////////////////////////////////
  73          //send_resp(0xB0,0x01,4,0);
  74          /*
  75          void send_resp(uchar con_byte,uchar status ,uchar dp,uchar data_len)
  76          {
  77                  uchar i;
  78                  uint j;
  79                  if(dp==4)      { }    no card,iso error
  80                  else if(dp<4)
  81                  {
  82                          dp --;
  83                          for(i=data_len;i>0;i--)
  84                          {
  85                                  pcdata[3+i] = pcdata[dp+i];
  86                          }  
  87                  }
  88                  else
  89                  {
  90                          for(i=0;i<data_len;i++)
  91                          {
  92                                  pcdata[4+i] = pcdata[dp+i];
  93                          }
  94                  }
  95                  
  96                  pcdata[0] = data_len+6;
  97                  pcdata[1] = devAddr;
  98                  pcdata[2] = con_byte;
  99                  pcdata[3] = status;
 100                  j = crc16Calculate(pcdata,data_len+4);
 101                  j = ~j;
 102                  pcdata[data_len+4] = HIBYTE(j);                 //crc MSByte
 103                  pcdata[data_len+5] = LOBYTE(j);                 //crc LMSByte
 104                  send2main();      
 105          }
 106          */
 107          
 108          //      con_byte-------------0xb1
 109          //  status---------------0:      ok
 110          //                                               01: no card
 111          //                                               11: parameter error
 112          //                                               95: iso error
 113          //  dp--------------------pcdata[]的取数地址
 114          //  data_len--------------数据长度
 115          /*
 116          void send_resp(uchar con_byte,uchar status ,uchar dp,uchar data_len)
 117          {
C51 COMPILER V7.09   SERIAL                                                                09/11/2007 09:30:27 PAGE 3   

 118                  uint j;
 119                  dp = 0;
 120                  pcdata[0] = data_len+6;
 121                  pcdata[1] = deviceAddr;
 122                  pcdata[2] = con_byte;
 123                  pcdata[3] = status;
 124                  j = crc16Calculate(pcdata,data_len+4);
 125                  j = ~j;
 126                  pcdata[data_len+4] = HIBYTE(j);                 //crc MSByte
 127                  pcdata[data_len+5] = LOBYTE(j);                 //crc LMSByte
 128                  send2main(); 
 129          }
 130          */


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