📄 keypaddrive.src
字号:
; SOURCE LINE # 213
MOV DPTR,#KeyElement3+01H
?C0078:
;
; KeyPadStatus=1;
; SOURCE LINE # 215
; break;
; SOURCE LINE # 216
SJMP ?C0080
; }
; SOURCE LINE # 217
?C0026:
; if (Vertical2)
; SOURCE LINE # 218
JNB Vertical2,?C0027
; {
; SOURCE LINE # 219
; Temp=KeyElement3[2];
; SOURCE LINE # 220
MOV DPTR,#KeyElement3+02H
?C0079:
;
; KeyPadStatus=1;
; SOURCE LINE # 222
; break;
; SOURCE LINE # 223
SJMP ?C0080
; }
; SOURCE LINE # 224
?C0027:
; if (Vertical3)
; SOURCE LINE # 225
JB Vertical3,$ + 6H
LJMP ?C0065
; {
; SOURCE LINE # 226
; Temp=KeyElement3[3];
; SOURCE LINE # 227
MOV DPTR,#KeyElement3+03H
?C0080:
MOVX A,@DPTR
MOV DPTR,#Temp
MOVX @DPTR,A
;
; KeyPadStatus=1;
; SOURCE LINE # 229
MOV R0,#LOW (KeyPadStatus)
MOV @R0,#01H
; break;
; SOURCE LINE # 230
RET
; }
; SOURCE LINE # 231
; }
; SOURCE LINE # 232
; ///FirstScan();
;
; break;
; SOURCE LINE # 235
; case 1:
; SOURCE LINE # 236
?C0029:
; if (Temp!=0)
; SOURCE LINE # 237
MOV DPTR,#Temp
MOVX A,@DPTR
JNZ $ + 5H
LJMP ?C0065
; {
; SOURCE LINE # 238
; Delay10ms=0;
; SOURCE LINE # 239
CLR A
MOV DPTR,#Delay10ms
MOVX @DPTR,A
; KeyPadStatus=2;
; SOURCE LINE # 240
MOV R0,#LOW (KeyPadStatus)
MOV @R0,#02H
;
; }
; SOURCE LINE # 242
; break;
; SOURCE LINE # 243
RET
; case 2:
; SOURCE LINE # 244
?C0031:
; if (Delay10ms>=1)
; SOURCE LINE # 245
MOV DPTR,#Delay10ms
MOVX A,@DPTR
CLR C
SUBB A,#01H
JNC $ + 5H
LJMP ?C0053
; {
; SOURCE LINE # 246
; Delay10ms=0;
; SOURCE LINE # 247
CLR A
MOVX @DPTR,A
; //--------------------------------------------------------------------------
; // scan the first row
; //--------------------------------------------------------------------------
; KEY_ROW = Row[0];
; SOURCE LINE # 251
MOV DPTR,#Row
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; Key=KEY_VERTICAL;
; SOURCE LINE # 252
MOV DPTR,#0A000H
MOVX A,@DPTR
MOV Key,A
; if (Key)
; SOURCE LINE # 253
JZ ?C0033
; {
; SOURCE LINE # 254
; if (Vertical0)
; SOURCE LINE # 255
JNB Vertical0,?C0034
; {
; SOURCE LINE # 256
; Temp1=KeyElement0[0];
; SOURCE LINE # 257
MOV DPTR,#KeyElement0
; KeyPadStatus=3;
; SOURCE LINE # 258
; break;
; SOURCE LINE # 259
LJMP ?C0095
; }
; SOURCE LINE # 260
?C0034:
;
; if (Vertical1)
; SOURCE LINE # 262
JNB Vertical1,?C0035
; {
; SOURCE LINE # 263
; Temp1=KeyElement0[1];
; SOURCE LINE # 264
MOV DPTR,#KeyElement0+01H
?C0081:
;
; KeyPadStatus=3;
; SOURCE LINE # 266
; break;
; SOURCE LINE # 267
LJMP ?C0095
; }
; SOURCE LINE # 268
?C0035:
; if (Vertical2)
; SOURCE LINE # 269
JNB Vertical2,?C0036
; {
; SOURCE LINE # 270
; Temp1=KeyElement0[2];
; SOURCE LINE # 271
MOV DPTR,#KeyElement0+02H
?C0082:
;
; KeyPadStatus=3;
; SOURCE LINE # 273
; break;
; SOURCE LINE # 274
LJMP ?C0095
; }
; SOURCE LINE # 275
?C0036:
; if (Vertical3)
; SOURCE LINE # 276
JNB Vertical3,?C0033
; {
; SOURCE LINE # 277
; Temp1=KeyElement0[3];
; SOURCE LINE # 278
MOV DPTR,#KeyElement0+03H
?C0083:
;
; KeyPadStatus=3;
; SOURCE LINE # 280
; break;
; SOURCE LINE # 281
LJMP ?C0095
; }
; SOURCE LINE # 282
; }
; SOURCE LINE # 283
?C0033:
;
; //------------------------------------------------------------------------------
; // scan the secend row
; //------------------------------------------------------------------------------
; KEY_ROW = Row[1];
; SOURCE LINE # 288
MOV DPTR,#Row+01H
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; Key=KEY_VERTICAL;
; SOURCE LINE # 289
MOV DPTR,#0A000H
MOVX A,@DPTR
MOV Key,A
; if (Key)
; SOURCE LINE # 290
JZ ?C0038
; {
; SOURCE LINE # 291
;
; if (Vertical0)
; SOURCE LINE # 293
JNB Vertical0,?C0039
; {
; SOURCE LINE # 294
; Temp1=KeyElement1[0];
; SOURCE LINE # 295
MOV DPTR,#KeyElement1
?C0084:
; KeyPadStatus=3;
; SOURCE LINE # 296
; break;
; SOURCE LINE # 297
SJMP ?C0095
; }
; SOURCE LINE # 298
?C0039:
;
; if (Vertical1)
; SOURCE LINE # 300
JNB Vertical1,?C0040
; {
; SOURCE LINE # 301
; Temp1=KeyElement1[1];
; SOURCE LINE # 302
MOV DPTR,#KeyElement1+01H
?C0085:
;
; KeyPadStatus=3;
; SOURCE LINE # 304
; break;
; SOURCE LINE # 305
SJMP ?C0095
; }
; SOURCE LINE # 306
?C0040:
; if (Vertical2)
; SOURCE LINE # 307
JNB Vertical2,?C0041
; {
; SOURCE LINE # 308
; Temp1=KeyElement1[2];
; SOURCE LINE # 309
MOV DPTR,#KeyElement1+02H
?C0086:
;
; KeyPadStatus=3;
; SOURCE LINE # 311
; break;
; SOURCE LINE # 312
SJMP ?C0095
; }
; SOURCE LINE # 313
?C0041:
; if (Vertical3)
; SOURCE LINE # 314
JNB Vertical3,?C0038
; {
; SOURCE LINE # 315
; Temp1=KeyElement1[3];
; SOURCE LINE # 316
MOV DPTR,#KeyElement1+03H
?C0087:
;
; KeyPadStatus=3;
; SOURCE LINE # 318
; break;
; SOURCE LINE # 319
SJMP ?C0095
; }
; SOURCE LINE # 320
; }
; SOURCE LINE # 321
?C0038:
; //------------------------------------------------------------------------------
; // scan the third row
; //------------------------------------------------------------------------------
; KEY_ROW = Row[2];
; SOURCE LINE # 325
MOV DPTR,#Row+02H
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; Key=KEY_VERTICAL;
; SOURCE LINE # 326
MOV DPTR,#0A000H
MOVX A,@DPTR
MOV Key,A
; if (Key)
; SOURCE LINE # 327
JZ ?C0043
; {
; SOURCE LINE # 328
; if (Vertical0)
; SOURCE LINE # 329
JNB Vertical0,?C0044
; {
; SOURCE LINE # 330
; Temp1=KeyElement2[0];
; SOURCE LINE # 331
MOV DPTR,#KeyElement2
?C0088:
; KeyPadStatus=3;
; SOURCE LINE # 332
; break;
; SOURCE LINE # 333
SJMP ?C0095
; }
; SOURCE LINE # 334
?C0044:
;
; if (Vertical1)
; SOURCE LINE # 336
JNB Vertical1,?C0045
; {
; SOURCE LINE # 337
; Temp1=KeyElement2[1];
; SOURCE LINE # 338
MOV DPTR,#KeyElement2+01H
?C0089:
;
; KeyPadStatus=3;
; SOURCE LINE # 340
; break;
; SOURCE LINE # 341
SJMP ?C0095
; }
; SOURCE LINE # 342
?C0045:
; if (Vertical2)
; SOURCE LINE # 343
JNB Vertical2,?C0046
; {
; SOURCE LINE # 344
; Temp1=KeyElement2[2];
; SOURCE LINE # 345
MOV DPTR,#KeyElement2+02H
?C0090:
;
; KeyPadStatus=3;
; SOURCE LINE # 347
; break;
; SOURCE LINE # 348
SJMP ?C0095
; }
; SOURCE LINE # 349
?C0046:
; if (Vertical3)
; SOURCE LINE # 350
JNB Vertical3,?C0043
; {
; SOURCE LINE # 351
; Temp1=KeyElement2[3];
; SOURCE LINE # 352
MOV DPTR,#KeyElement2+03H
?C0091:
;
; KeyPadStatus=3;
; SOURCE LINE # 354
; break;
; SOURCE LINE # 355
SJMP ?C0095
; }
; SOURCE LINE # 356
; }
; SOURCE LINE # 357
?C0043:
; //------------------------------------------------------------------------------
; // scan the fourth row
; //------------------------------------------------------------------------------
; KEY_ROW = Row[3];
; SOURCE LINE # 361
MOV DPTR,#Row+03H
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; Key=KEY_VERTICAL;
; SOURCE LINE # 362
MOV DPTR,#0A000H
MOVX A,@DPTR
MOV Key,A
; if (Key)
; SOURCE LINE # 363
JZ ?C0096
; {
; SOURCE LINE # 364
; if (Vertical0)
; SOURCE LINE # 365
JNB Vertical0,?C0049
; {
; SOURCE LINE # 366
; Temp1=KeyElement3[0];
; SOURCE LINE # 367
MOV DPTR,#KeyElement3
?C0092:
; KeyPadStatus=3;
; SOURCE LINE # 368
; break;
; SOURCE LINE # 369
SJMP ?C0095
; }
; SOURCE LINE # 370
?C0049:
;
; if (Vertical1)
; SOURCE LINE # 372
JNB Vertical1,?C0050
; {
; SOURCE LINE # 373
; Temp1=KeyElement3[1];
; SOURCE LINE # 374
MOV DPTR,#KeyElement3+01H
?C0093:
;
; KeyPadStatus=3;
; SOURCE LINE # 376
; break;
; SOURCE LINE # 377
SJMP ?C0095
; }
; SOURCE LINE # 378
?C0050:
; if (Vertical2)
; SOURCE LINE # 379
JNB Vertical2,?C0051
; {
; SOURCE LINE # 380
; Temp1=KeyElement3[2];
; SOURCE LINE # 381
MOV DPTR,#KeyElement3+02H
?C0094:
;
; KeyPadStatus=3;
; SOURCE LINE # 383
; break;
; SOURCE LINE # 384
SJMP ?C0095
; }
; SOURCE LINE # 385
?C0051:
; if (Vertical3)
; SOURCE LINE # 386
JNB Vertical3,?C0096
; {
; SOURCE LINE # 387
; Temp1=KeyElement3[3];
; SOURCE LINE # 388
MOV DPTR,#KeyElement3+03H
?C0095:
MOVX A,@DPTR
MOV DPTR,#Temp1
MOVX @DPTR,A
;
; KeyPadStatus=3;
; SOURCE LINE # 390
MOV R0,#LOW (KeyPadStatus)
MOV @R0,#03H
; break;
; SOURCE LINE # 391
RET
; }
; SOURCE LINE # 392
; }
; SOURCE LINE # 393
; KeyPadStatus=0;
; Temp=0;
; break;
; }
; SOURCE LINE # 397
; //---------------------------------------------------------------------------
; case 3:
; SOURCE LINE # 399
?C0053:
; if (Temp==Temp1)
; SOURCE LINE # 400
MOV DPTR,#Temp1
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#Temp
MOVX A,@DPTR
CJNE A,AR7,?C0054
; {
; SOURCE LINE # 401
; PutInBuf(Temp1);
; SOURCE LINE # 402
LCALL _PutInBuf
; KeyPadStatus=4;
; SOURCE LINE # 403
MOV R0,#LOW (KeyPadStatus)
MOV @R0,#04H
; break;
; SOURCE LINE # 404
RET
;
; }
; SOURCE LINE # 406
?C0054:
;
;
; KeyPadStatus=0;
; SOURCE LINE # 409
?C0096:
; Temp=0;
; SOURCE LINE # 410
; break;
; SOURCE LINE # 411
SJMP ?C0097
; case 4:
; SOURCE LINE # 412
?C0055:
; KEY_ROW = Row[0];
; SOURCE LINE # 413
MOV DPTR,#Row
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; x0=KEY_VERTICAL&0x0f;
; SOURCE LINE # 414
MOV DPTR,#0A000H
MOVX A,@DPTR
ANL A,#0FH
MOV R7,A
;---- Variable 'x0?242' assigned to Register 'R7' ----
; KEY_ROW = Row[1];
; SOURCE LINE # 415
MOV DPTR,#Row+01H
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; x1=KEY_VERTICAL&0x0f;
; SOURCE LINE # 416
MOV DPTR,#0A000H
MOVX A,@DPTR
ANL A,#0FH
MOV R6,A
;---- Variable 'x1?243' assigned to Register 'R6' ----
; KEY_ROW = Row[2];
; SOURCE LINE # 417
MOV DPTR,#Row+02H
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; x2=KEY_VERTICAL&0x0f;
; SOURCE LINE # 418
MOV DPTR,#0A000H
MOVX A,@DPTR
ANL A,#0FH
MOV R5,A
;---- Variable 'x2?244' assigned to Register 'R5' ----
; KEY_ROW = Row[3];
; SOURCE LINE # 419
MOV DPTR,#Row+03H
CLR A
MOVC A,@A+DPTR
MOV DPTR,#02000H
MOVX @DPTR,A
; x3=KEY_VERTICAL&0x0f;
; SOURCE LINE # 420
MOV DPTR,#0A000H
MOVX A,@DPTR
ANL A,#0FH
MOV R4,A
;---- Variable 'x3?245' assigned to Register 'R4' ----
; if ((x0==0)&(x1==0)&(x2==0)&(x3==0))
; SOURCE LINE # 421
MOV A,R6
JNZ ?C0057
MOV R6,#01H
SJMP ?C0058
?C0057:
MOV R6,#00H
?C0058:
MOV A,R7
JNZ ?C0059
MOV R7,#01H
SJMP ?C0060
?C0059:
MOV R7,#00H
?C0060:
MOV A,R7
ANL A,R6
MOV R7,A
MOV R6,AR5
MOV A,R5
JNZ ?C0061
MOV R6,#01H
SJMP ?C0062
?C0061:
MOV R6,#00H
?C0062:
MOV A,R6
ANL A,R7
MOV R7,A
MOV R6,AR4
MOV A,R4
JNZ ?C0063
MOV R6,#01H
SJMP ?C0064
?C0063:
MOV R6,#00H
?C0064:
MOV A,R6
ANL A,R7
JZ ?C0065
; {
; SOURCE LINE # 422
; KeyPadStatus=0;
; SOURCE LINE # 423
?C0097:
CLR A
MOV R0,#LOW (KeyPadStatus)
MOV @R0,A
; Temp=0;
; SOURCE LINE # 424
MOV DPTR,#Temp
MOVX @DPTR,A
;
; }
; SOURCE LINE # 426
; break;
; SOURCE LINE # 427
;
;
; }
; SOURCE LINE # 430
; }
; SOURCE LINE # 431
?C0065:
RET
; END OF KeyScan
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -