sle4442.lst

来自「mifarea卡程序mifarea卡程序mifarea卡程序」· LST 代码 · 共 130 行

LST
130
字号
C51 COMPILER V8.00   SLE4442                                                               04/23/2009 15:56:18 PAGE 1   


C51 COMPILER V8.00, COMPILATION OF MODULE SLE4442
OBJECT MODULE PLACED IN .\out_sst89e564\sle4442.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE source\sle4442.c LARGE BROWSE ORDER NOAREGS DEBUG OBJECTEXTEND PRINT(.\sle4
                    -442.lst) OBJECT(.\out_sst89e564\sle4442.obj)

line level    source

   1          /****************************************
   2           * sle4442.c                            *
   3           * functions for sle4442 card           *
   4           * designed by liulixun                 *
   5           * last update: 05-18-2007              *
   6           ****************************************/
   7          
   8          #include "..\inc\includes.h"
   9          
  10          // read main memory
  11          int Sle4442ReadMainMem(unsigned char address, unsigned char *buf)
  12          {
  13   1          unsigned int i;
  14   1          
  15   1          // send command and address
  16   1          Sle4442Command(0x30, address, 0x00);
  17   1          // read data
  18   1          for(i=0; i<256-address; i++)
  19   1          {
  20   2              buf[i] = IccSyncGetChar();
  21   2          }
  22   1          // send another clock puls
  23   1          IccSyncClock();
  24   1          
  25   1          return i;
  26   1      }
  27          
  28          // update main memory
  29          void Sle4442WriteMainMem(unsigned char address, unsigned char val)
  30          {
  31   1          // send command
  32   1          Sle4442Command(0x38, address, val);
  33   1          // polling io
  34   1          IccSyncPollingIO(50);
  35   1      }
  36          
  37          // read 4 bytes protect memory
  38          void Sle4442ReadProtectMem(unsigned char *buf)
  39          {
  40   1          unsigned char ci;
  41   1          
  42   1          // send command
  43   1          Sle4442Command(0x34, 0x00, 0x00);
  44   1          // read data
  45   1          for(ci=0; ci<4; ci++)
  46   1          {
  47   2              buf[ci] = IccSyncGetChar();
  48   2          }
  49   1          // send another clock puls
  50   1          IccSyncClock();
  51   1      }
  52          
  53          // write protect memory
  54          void Sle4442WriteProtectMem(unsigned char address, unsigned char val)
C51 COMPILER V8.00   SLE4442                                                               04/23/2009 15:56:18 PAGE 2   

  55          {
  56   1          // send command
  57   1          Sle4442Command(0x3c, address, val);
  58   1          // polling io
  59   1          IccSyncPollingIO(50);
  60   1      }
  61          
  62          // read 4 bytes
  63          void Sle4442ReadSecurityMem(unsigned char *buf)
  64          {
  65   1          unsigned char ci;
  66   1          
  67   1          // send command
  68   1          Sle4442Command(0x31, 0x00, 0x00);
  69   1          // read data
  70   1          for(ci=0; ci<4; ci++)
  71   1          {
  72   2              buf[ci] = IccSyncGetChar();
  73   2          }
  74   1          // send another clock puls
  75   1          IccSyncClock();
  76   1      }
  77          
  78          // update 
  79          void Sle4442WriteSecurityMem(unsigned char address, unsigned char val)
  80          {
  81   1          // send command
  82   1          Sle4442Command(0x39, address, val);
  83   1          // polling io
  84   1          IccSyncPollingIO(50);
  85   1      }
  86          
  87          // verify
  88          void Sle4442Verify(unsigned char address, unsigned char val)
  89          {
  90   1          // send command
  91   1          Sle4442Command(0x33, address, val);
  92   1          // polling io
  93   1          IccSyncPollingIO(50);
  94   1      }
  95          
  96          void Sle4442Command(unsigned char cmd, unsigned char addr, unsigned char da)
  97          {
  98   1          IccSyncStart();
  99   1          IccSyncPutChar(cmd);
 100   1          IccSyncPutChar(addr);
 101   1          IccSyncPutChar(da);
 102   1          IccSyncStop();
 103   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    378    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----      17
   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 + =
减小字号Ctrl + -
显示快捷键?