📄 mifareproexcute.lst
字号:
C51 COMPILER V8.00 MIFAREPROEXCUTE 04/23/2009 15:56:19 PAGE 1
C51 COMPILER V8.00, COMPILATION OF MODULE MIFAREPROEXCUTE
OBJECT MODULE PLACED IN .\out_sst89e564\MifareProExcute.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE source\MifareProExcute.c LARGE BROWSE ORDER NOAREGS DEBUG OBJECTEXTEND PRIN
-T(.\MifareProExcute.lst) OBJECT(.\out_sst89e564\MifareProExcute.obj)
line level source
1 #include "MifarePro.h"
2 #include "includes.h"
3 #include "COMMAND.H"
4
5
6 //卡片命令执行函数,调用相应的命令处理函数实现其命令功能.
7
8
9 unsigned int MifareProExcute(unsigned char *CmdBuf,unsigned int buflen)
10 {
11 1 char prostatus;
12 1 char proflag;
13 1 //unsigned char *pcd;
14 1 // unsigned int *len;
15 1 unsigned int ExCmdLen;
16 1 // len=&buflen;
17 1
18 1 proflag = CmdBuf[0];
19 1 ExCmdLen = buflen;
20 1
21 1 //buf[0]是暂时的位置(或者其它位置的标识符),可能是其它的位置.
22 1 //读取命令格式中的标识符,选择不同的操作函数,可以有很多的操作函数.
23 1 //可以有更多的操作函数,不仅限于这里的函数.
24 1
25 1
26 1
27 1 //////////////////////////////////////////////////////////////////////////////////////////////////////////
-////////////////////
28 1
29 1
30 1 if(CmdBuf[1]&0xFF !=0)
31 1 {
32 2 if(ExCmdLen<=MaxLength)
33 2 {
34 3 //prostatus = Cmd_PackedProc(CmdBuf,&buflen); //注意buflen的大小!
35 3 prostatus = MProCommand(CmdBuf+2,ExCmdLen,CmdBuf,&buflen,1,11);
36 3 if(prostatus == MI_OK)
37 3 {
38 4 // buflen=*len;
39 4
40 4 ComputeCrc(CmdBuf+2,buflen-2,CmdBuf+buflen-2,CmdBuf+buflen-1);
41 4 memcpy(CmdBuf,CmdBuf+2,buflen-2);
42 4 buflen = buflen - 2;
43 4 return buflen;
44 4 }
45 3 else
46 3 {
47 4 CmdBuf[0] = FAIL;
48 4 return 1;
49 4 }
50 3 }
51 2 }
52 1
53 1 else
C51 COMPILER V8.00 MIFAREPROEXCUTE 04/23/2009 15:56:19 PAGE 2
54 1 {
55 2 if(buflen<=MaxLength)
56 2 {
57 3 prostatus = MProCommand(CmdBuf+2,ExCmdLen,CmdBuf,&buflen,1,11); //card res
-et function
58 3 if(prostatus == MI_OK)
59 3 {
60 4 // buflen=*len;
61 4
62 4 ComputeCrc(CmdBuf,buflen,CmdBuf+buflen-2,CmdBuf+buflen-1);
63 4 memcpy(CmdBuf,CmdBuf+2,buflen-2);
64 4 return buflen-2;
65 4 }
66 3 else
67 3 {
68 4 CmdBuf[0] = FAIL;
69 4 return 1;
70 4 }
71 3 }
72 2 }
73 1
74 1 //CmdBuf[0] = FAIL;
75 1 //return 1;
76 1
77 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 675 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 9
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 + -