📄 main.lst
字号:
C51 COMPILER V4.01, MAIN 19/08/04 14:33:23 PAGE 1
DOS C51 COMPILER V4.01, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN D:\13505B\105B\MAIN.OBJ
COMPILER INVOKED BY: C:\COMP51\C51.EXE D:\13505B\105B\MAIN.C DB SB OE
stmt level source
1
-
- #include "Hardware.h"
2 #include "RcComm.h"
3 #include "PcdShare.h"
4 #include "PcdUtils.h"
5 #include "MfReg.h"
6 #include "MfRc500.h"
7 #include "MfErrNo.h"
8 #include "cardhead.h"
9 #include <intrins.h>
10 #include <string.h>
11 #include "X5045.h"
12 #include "newcard.h"
13 /*********************************************/
14 extern unsigned char ResetAllCard(void);
15 extern unsigned char RfSwitchOff(void);
16 extern unsigned char InitPcd(void);
17 extern char OpenRC(void);
18 extern void CloseRC(void);
19 extern char PcdReadE2(unsigned short startaddr,
20 unsigned char length,
21 unsigned char * DataBuffer);
22
23 /*******************************************/
24
25
26
27
28 extern void CommTransact(void);
29 extern void TestLoop(void) ; //2002.9.11 老化测试
30
31
32 int_0() interrupt 0 //using 3
33 {
34 1
35 1 SingleResponseIsr();
36 1 }
37
38 /////////////////////////////////////////////////////////////////////////////
39
40 extern uchar xdata ComBuffer[MAXLEN];
41 uchar idata ComCount;
42
43
44
45 main()
46 {
47 1
48 1 uchar RDataTemp;
49 1 uchar flag=0;
50 1
51 1 if(flag)
52 1 {
53 2
54 2 ResetAllCard();
55 2 RfSwitchOff();
56 2 InitPcd();
57 2 OpenRC();
C51 COMPILER V4.01, MAIN 19/08/04 14:33:23 PAGE 2
58 2 CloseRC();
59 2 PcdReadE2(00,10,ComBuffer);
60 2 PcdClose();
61 2 }
62 1
63 1
64 1
65 1 AUXR=0X00;
66 1 //PMR=0X01;
67 1 init_X5045(0X00);
68 1 SetBaud(Baud115200);
69 1 PcdOpen();
70 1 Beep(3,100);
71 1 SleepMs(50);
72 1 W_DOG();
73 1 Mf500PcdConfig();
74 1 Reset1();
75 1 TestLoop();
76 1 SleepMs(50);
77 1
78 1 while(1)
79 1 {
80 2 W_DOG();
81 2 ComCount++;
82 2 if(ComCount>MAXLEN)
83 2 {
84 3 ComCount=1;
85 3 memset(ComBuffer,0x00,4);
86 3 }
87 2
88 2 while(RI==0)
89 2 {
90 3 W_DOG();
91 3 }
92 2
93 2 RI=0;
94 2
95 2 RDataTemp=SBUF;
96 2 if((ComCount==1) && (RDataTemp==STX))
97 2 { /* Check STX */
98 3 ComBuffer[ComCount-1]=STX;
99 3
100 3 continue;
101 3 }
102 2
103 2 if((ComCount==1) && (RDataTemp!=STX))
104 2 {
105 3 ComCount=MAXLEN;
106 3 continue;
107 3 }
108 2
109 2 if(ComCount==2)
110 2 {
111 3 if(RDataTemp>(MAXLEN-3))
112 3 { /*len error*/
113 4 ComCount=MAXLEN; /*Set ComCount>Maxlen*/
114 4 SleepMs(2); /*上位机发送的数据长度过大,整个数据包长度大于MAXLEN*/
115 4 SendMsError();
116 4 }
117 3 else
118 3 {
119 4 ComBuffer[1]=RDataTemp;
120 4 }
121 3 continue;
122 3 }
123 2
C51 COMPILER V4.01, MAIN 19/08/04 14:33:23 PAGE 3
124 2 if((ComCount>2)&&(ComCount<=(ComBuffer[1]+3)))
125 2 { /*get command */
126 3 ComBuffer[ComCount-1]=RDataTemp;
127 3 continue;
128 3 }
129 2
130 2 if(ComCount==(ComBuffer[1]+4))
131 2 {
132 3 if(RDataTemp==ETX)
133 3 {
134 4 ComBuffer[ComCount-1]=RDataTemp; //结束字节送入ComBuffer[]
135 4 if((CheckCRC())!=CrcOK)
136 4 {
137 5
138 5 SendMsError();
139 5 }
140 4 else
141 4 {
142 5 CommTransact();
143 5 }
144 4 }
145 3 else SendMsError();
146 3
147 3 ComCount=MAXLEN;
148 3 }
149 2 }
150 1 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -