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

📄 tc.src

📁 mifarea卡程序mifarea卡程序mifarea卡程序
💻 SRC
📖 第 1 页 / 共 4 页
字号:
;                 if(i <= 0)
			; SOURCE LINE # 108
	SETB 	C
	SUBB 	A,#00H
	MOV  	A,R6
	XRL  	A,#080H
	SUBB 	A,#080H
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	JNC  	?C0022
;                 {
			; SOURCE LINE # 109
;                     cmd[0] = FAIL;
			; SOURCE LINE # 110
?C0129:
;                     cmd[1] = i;
			; SOURCE LINE # 111
;                     return 2;
			; SOURCE LINE # 112
	LJMP 	?C0132
;                 }
			; SOURCE LINE # 113
?C0022:
;                 cmd[0] = SUCCESS;
			; SOURCE LINE # 114
?C0130:
;                 return i+1;
			; SOURCE LINE # 115
	LJMP 	?C0133
; 
;             case CMD_SYNC_START:
			; SOURCE LINE # 117
?C0023:
;                 if(len != 2)
			; SOURCE LINE # 118
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	JNZ  	?C0102
	INC  	DPTR
	MOVX 	A,@DPTR
	XRL  	A,#02H
?C0102:
	JZ   	?C0024
;                 {
			; SOURCE LINE # 119
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 120
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0131:
;                     return 1;
			; SOURCE LINE # 121
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 122
?C0024:
;                 IccSyncStart();
			; SOURCE LINE # 123
	LCALL	IccSyncStart
;                 cmd[0] = SUCCESS;
			; SOURCE LINE # 124
;                 return 1;
			; SOURCE LINE # 125
	LJMP 	?C0164
; 
;             case CMD_SYNC_STOP:
			; SOURCE LINE # 127
?C0025:
;                 if(len != 2)
			; SOURCE LINE # 128
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	JNZ  	?C0103
	INC  	DPTR
	MOVX 	A,@DPTR
	XRL  	A,#02H
?C0103:
	JZ   	?C0026
;                 {
			; SOURCE LINE # 129
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 130
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0134:
;                     return 1;
			; SOURCE LINE # 131
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 132
?C0026:
;                 IccSyncStop();
			; SOURCE LINE # 133
	LCALL	IccSyncStop
;                 cmd[0] = SUCCESS;
			; SOURCE LINE # 134
?C0135:
;                 return 1;
			; SOURCE LINE # 135
	LJMP 	?C0164
; 
;             case CMD_SYNC_PUTCHAR_ACK:
			; SOURCE LINE # 137
?C0027:
;                 if(len != 3)
			; SOURCE LINE # 138
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	JNZ  	?C0104
	INC  	DPTR
	MOVX 	A,@DPTR
	XRL  	A,#03H
?C0104:
	JZ   	?C0028
;                 {
			; SOURCE LINE # 139
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 140
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0136:
;                     return 1;
			; SOURCE LINE # 141
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 142
?C0028:
;                 i = IccSyncPutCharWaitACK(cmd[2]);
			; SOURCE LINE # 143
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#02H
	LCALL	?C?CLDOPTR
	MOV  	R7,A
	LCALL	_IccSyncPutCharWaitACK
	CLR  	A
	MOV  	R6,A
	RLC  	A
	MOV  	R7,A
	MOV  	DPTR,#i?143
	MOV  	A,R6
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R7
	MOVX 	@DPTR,A
;                 if(i == 0)
			; SOURCE LINE # 144
	MOV  	DPTR,#cmd?141
	JNZ  	?C0029
;                 {
			; SOURCE LINE # 145
;                     cmd[0] = SUCCESS;
			; SOURCE LINE # 146
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	CLR  	A
	LCALL	?C?CSTPTR
;                     return 1;
			; SOURCE LINE # 147
	MOV  	R7,#01H
	RET  	
;                 }
			; SOURCE LINE # 148
?C0029:
;                 else
;                 {
			; SOURCE LINE # 150
;                     cmd[0] = FAIL;
			; SOURCE LINE # 151
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0127:
	MOV  	A,#01H
	LCALL	?C?CSTPTR
;                     return 1;
			; SOURCE LINE # 152
	MOV  	R6,#00H
	MOV  	R7,A
	RET  	
;                 }
			; SOURCE LINE # 153
;                 break;
			; SOURCE LINE # 154
; 
;             case CMD_SYNC_GETCHAR_ACK:
			; SOURCE LINE # 156
?C0031:
;                 if(len != 3)
			; SOURCE LINE # 157
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	JNZ  	?C0105
	INC  	DPTR
	MOVX 	A,@DPTR
	XRL  	A,#03H
?C0105:
	JZ   	?C0032
;                 {
			; SOURCE LINE # 158
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 159
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0138:
;                     return 1;
			; SOURCE LINE # 160
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 161
?C0032:
;                 cmd[1] = IccSyncGetCharSendACK(cmd[2]?0:1);
			; SOURCE LINE # 162
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#02H
	LCALL	?C?CLDOPTR
	JZ   	?C0033
	CLR  	C
	SJMP 	?C0034
?C0033:
	SETB 	C
?C0034:
	MOV  	?IccSyncGetCharSendACK?BIT,C
	LCALL	IccSyncGetCharSendACK
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#01H
	MOV  	A,R7
	LCALL	?C?CSTOPTR
;                 cmd[0] = SUCCESS;
			; SOURCE LINE # 163
	CLR  	A
	LCALL	?C?CSTPTR
;                 return 2;
			; SOURCE LINE # 164
	MOV  	R6,A
	MOV  	R7,#02H
	RET  	
; 
;             case CMD_SYNC_WR_ACK:
			; SOURCE LINE # 166
?C0035:
;                 if(len > 13)
			; SOURCE LINE # 167
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	SETB 	C
	SUBB 	A,#0DH
	MOV  	A,R4
	SUBB 	A,#00H
	JC   	?C0036
;                 {
			; SOURCE LINE # 168
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 169
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0139:
;                     return 1;
			; SOURCE LINE # 170
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 171
?C0036:
;                 ci = cmd[len-1];
			; SOURCE LINE # 172
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	A,#0FFH
	ADD  	A,R5
	MOV  	DPL,A
	MOV  	A,#0FFH
	ADDC 	A,R4
	MOV  	DPH,A
	LCALL	?C?CLDOPTR
	MOV  	DPTR,#ci?144
	MOVX 	@DPTR,A
;                 if(IccSyncWRWithACK(cmd+2, len-3, cmd+1, ci))
			; SOURCE LINE # 173
	MOV  	A,R1
	ADD  	A,#02H
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
	MOV  	A,R3
	PUSH 	ACC
	MOV  	A,R2
	PUSH 	ACC
	MOV  	A,R1
	PUSH 	ACC
	MOV  	A,R5
	ADD  	A,#0FDH
	MOV  	R5,A
	MOV  	A,R4
	ADDC 	A,#0FFH
	MOV  	R4,A
	MOV  	DPTR,#cmd?141
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	ADD  	A,#01H
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
	MOV  	DPTR,#?_IccSyncWRWithACK?BYTE+05H
	MOV  	A,R3
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R2
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R1
	MOVX 	@DPTR,A
	MOV  	DPTR,#ci?144
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	DPTR,#?_IccSyncWRWithACK?BYTE+08H
	CLR  	A
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R7
	MOVX 	@DPTR,A
	POP  	ACC
	MOV  	R1,A
	POP  	ACC
	MOV  	R2,A
	POP  	ACC
	MOV  	R3,A
	LCALL	_IccSyncWRWithACK
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	JNC  	?C0037
;                 {
			; SOURCE LINE # 174
;                     cmd[0] = SUCCESS;
			; SOURCE LINE # 175
	CLR  	A
	LCALL	?C?CSTPTR
;                     return ci+1;
			; SOURCE LINE # 176
	MOV  	DPTR,#ci?144
	MOVX 	A,@DPTR
	ADD  	A,#01H
	MOV  	R7,A
	CLR  	A
	RLC  	A
	MOV  	R6,A
	RET  	
;                 }
			; SOURCE LINE # 177
?C0037:
;                 else
;                 {
			; SOURCE LINE # 179
;                     cmd[0] = FAIL;
			; SOURCE LINE # 180
	MOV  	A,#01H
	LCALL	?C?CSTPTR
;                     cmd[1] = 0;     // error ?
			; SOURCE LINE # 181
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#01H
	CLR  	A
;                     return 2;
			; SOURCE LINE # 182
	LJMP 	?C0153
;                 }
			; SOURCE LINE # 183
; 
;             case CMD_153_WR_EEPROM:
			; SOURCE LINE # 185
?C0039:
;                 if(len > 68)
			; SOURCE LINE # 186
	SETB 	C
	MOV  	DPTR,#len?142+01H
	MOVX 	A,@DPTR
	SUBB 	A,#044H
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	SUBB 	A,#00H
	JC   	?C0040
;                 {
			; SOURCE LINE # 187
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 188
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0140:
;                     return 1;
			; SOURCE LINE # 189
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 190
?C0040:
;                 i = At153WriteEE(cmd[2], cmd[3], cmd+4, len-4);
			; SOURCE LINE # 191
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#02H
	LCALL	?C?CLDOPTR
	MOV  	R7,A
	MOV  	DPTR,#03H
	LCALL	?C?CLDOPTR
	MOV  	R5,A
	MOV  	A,R1
	ADD  	A,#04H
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	MOV  	R0,A
	INC  	DPTR
	MOVX 	A,@DPTR
	ADD  	A,#0FCH
	MOV  	DPTR,#?_At153WriteEE?BYTE+05H
	MOVX 	@DPTR,A
	LCALL	_At153WriteEE
	MOV  	DPTR,#i?143
	MOV  	A,R6
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R7
	MOVX 	@DPTR,A
;                 if(i >= 0)
			; SOURCE LINE # 192
	CLR  	C
	MOV  	A,R6
	XRL  	A,#080H
	SUBB 	A,#080H
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	JC   	?C0041
;                 {
			; SOURCE LINE # 193
;                     cmd[0] = SUCCESS;
			; SOURCE LINE # 194
	CLR  	A
;                     cmd[1] = (unsigned char)i;
			; SOURCE LINE # 195
;                     return 2;
			; SOURCE LINE # 196
	SJMP 	?C0119
;                 }
			; SOURCE LINE # 197
?C0041:
;                 else
;                 {
			; SOURCE LINE # 199
;                     cmd[0] = FAIL;
			; SOURCE LINE # 200
	MOV  	A,#01H
?C0119:
	LCALL	?C?CSTPTR
;                     cmd[1] = (char)i;     // error ?
			; SOURCE LINE # 201
	MOV  	DPTR,#i?143
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#01H
	MOV  	A,R7
?C0141:
;                     return 2;
			; SOURCE LINE # 202
	LJMP 	?C0153
;                 }
			; SOURCE LINE # 203
; 
;             case CMD_153_RD_EEPROM:
			; SOURCE LINE # 205
?C0043:
;                 if(len != 5)
			; SOURCE LINE # 206
	MOV  	DPTR,#len?142
	MOVX 	A,@DPTR
	JNZ  	?C0106
	INC  	DPTR
	MOVX 	A,@DPTR
	XRL  	A,#05H
?C0106:
	JZ   	?C0044
;                 {
			; SOURCE LINE # 207
;                     cmd[0] = ERRORCMDLEN;
			; SOURCE LINE # 208
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
?C0142:
;                     return 1;
			; SOURCE LINE # 209
	LJMP 	?C0163
;                 }
			; SOURCE LINE # 210
?C0044:
;                 i = At153ReadEE(cmd[2], cmd[3], cmd+1, cmd[4]);
			; SOURCE LINE # 211
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#02H
	LCALL	?C?CLDOPTR
	MOV  	R7,A
	MOV  	DPTR,#03H
	LCALL	?C?CLDOPTR
	MOV  	R5,A
	MOV  	A,R1
	ADD  	A,#01H
	MOV  	R1,A
	CLR  	A
	ADDC 	A,R2
	MOV  	R2,A
	MOV  	A,R2
	PUSH 	ACC
	MOV  	A,R1
	PUSH 	ACC
	MOV  	DPTR,#cmd?141
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#04H
	LCALL	?C?CLDOPTR
	MOV  	DPTR,#?_At153ReadEE?BYTE+05H
	MOVX 	@DPTR,A
	POP  	ACC
	MOV  	R1,A
	POP  	ACC
	MOV  	R2,A
	LCALL	_At153ReadEE
	MOV  	DPTR,#i?143
	MOV  	A,R6
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R7
	MOVX 	@DPTR,A
;                 if(i >= 0)
			; SOURCE LINE # 212
	CLR  	C
	MOV  	A,R6
	XRL  	A,#080H
	SUBB 	A,#080H
	MOV  	DPTR,#cmd?141
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	JC   	?C0045
;                 {
			; SOURCE LINE # 213
;                     cmd[0] = SUCCESS;
			; SOURCE LINE # 214
?C0133:
	CLR  	A
	LCALL	?C?CSTPTR
;                     return i+1;
			; SOURCE LINE # 215
	MOV  	DPTR,#i?143+01H
	MOVX 	A,@DPTR
	ADD  	A,#01H
	MOV  	R7,A
	MOV  	DPTR,#i?143
	MOVX 	A,@DPTR
	ADDC 	A,#00H
	MOV  	R6,A
	RET  	
;                 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -