📄 1.ls1
字号:
218 ;---- Variable 'i?140' assigned to Register 'R6/R7' ----
219 ; {
220 ; SOURCE LINE # 27
0004 221 ?C0002:
222 ; while(--i);
223 ; SOURCE LINE # 28
0004 EF 224 MOV A,R7
0005 1F 225 DEC R7
0006 7001 226 JNZ ?C0087
0008 1E 227 DEC R6
0009 228 ?C0087:
0009 14 229 DEC A
000A 4E 230 ORL A,R6
000B 70F7 231 JNZ ?C0002
232 ; }
233 ; SOURCE LINE # 29
000D 234 ?C0004:
000D 22 235 RET
236 ; END OF _delay
237
238 ;
239 ;
240 ; /*=========键盘扫描函数1==========*/
241 ;
242 ; uchar kbscan1()
243
---- 244 RSEG ?PR?kbscan1?1
0000 245 kbscan1:
246 USING 0
247 ; SOURCE LINE # 34
248 ; {
249 ; SOURCE LINE # 35
250 ; uchar l=0;
251 ; SOURCE LINE # 36
0000 E4 252 CLR A
0001 F500 F 253 MOV l?241,A
254 ; P1=0xff;
255 ; SOURCE LINE # 37
0003 7590FF 256 MOV P1,#0FFH
A51 MACRO ASSEMBLER 1 06/10/2007 20:32:48 PAGE 5
257 ; if(P1==0xff) //没有键按下
258 ; SOURCE LINE # 38
0006 E590 259 MOV A,P1
0008 B4FF05 260 CJNE A,#0FFH,?C0005
000B 261 ?C0006:
262 ; while(1)
263 ; SOURCE LINE # 39
264 ; {
265 ; SOURCE LINE # 40
266 ; if(P1!=0xff)
267 ; SOURCE LINE # 41
000B E590 268 MOV A,P1
000D F4 269 CPL A
000E 60FB 270 JZ ?C0006
271 ; break;
272 ; SOURCE LINE # 42
273 ; }
274 ; SOURCE LINE # 43
0010 275 ?C0005:
276 ;
277 ; if(P1!=0xff) //有键按下
278 ; SOURCE LINE # 45
0010 E590 279 MOV A,P1
0012 F4 280 CPL A
0013 6054 281 JZ ?C0009
282 ; {
283 ; SOURCE LINE # 46
284 ; delay(0x04e1); //延时10毫秒
285 ; SOURCE LINE # 47
0015 7FE1 286 MOV R7,#0E1H
0017 7E04 287 MOV R6,#04H
0019 120000 F 288 LCALL _delay
289 ; if(P1!=0xff) //确有键按下
290 ; SOURCE LINE # 48
001C E590 291 MOV A,P1
001E F4 292 CPL A
001F 6048 293 JZ ?C0009
294 ; {
295 ; SOURCE LINE # 49
296 ; switch(P1)
297 ; SOURCE LINE # 50
0021 AF90 298 MOV R7,P1
0023 EF 299 MOV A,R7
0024 2481 300 ADD A,#081H
0026 603E 301 JZ ?C0019
0028 24C0 302 ADD A,#0C0H
002A 6035 303 JZ ?C0018
002C 24E0 304 ADD A,#0E0H
002E 602C 305 JZ ?C0017
0030 24F0 306 ADD A,#0F0H
0032 6023 307 JZ ?C0016
0034 24F8 308 ADD A,#0F8H
0036 601A 309 JZ ?C0015
0038 24FC 310 ADD A,#0FCH
003A 6011 311 JZ ?C0014
003C 24FE 312 ADD A,#0FEH
003E 6008 313 JZ ?C0013
0040 14 314 DEC A
0041 7026 315 JNZ ?C0009
316 ; {
317 ; SOURCE LINE # 51
318 ; case 0xfe:l=0x06;break;
319 ; SOURCE LINE # 52
0043 320 ?C0012:
0043 750006 F 321 MOV l?241,#06H
0046 8021 322 SJMP ?C0009
A51 MACRO ASSEMBLER 1 06/10/2007 20:32:48 PAGE 6
323 ; case 0xfd:l=0x5b;break;
324 ; SOURCE LINE # 53
0048 325 ?C0013:
0048 75005B F 326 MOV l?241,#05BH
004B 801C 327 SJMP ?C0009
328 ; case 0xfb:l=0x4f;break;
329 ; SOURCE LINE # 54
004D 330 ?C0014:
004D 75004F F 331 MOV l?241,#04FH
0050 8017 332 SJMP ?C0009
333 ; case 0xf7:l=0x66;break;
334 ; SOURCE LINE # 55
0052 335 ?C0015:
0052 750066 F 336 MOV l?241,#066H
0055 8012 337 SJMP ?C0009
338 ; case 0xef:l=0x6d;break;
339 ; SOURCE LINE # 56
0057 340 ?C0016:
0057 75006D F 341 MOV l?241,#06DH
005A 800D 342 SJMP ?C0009
343 ; case 0xdf:l=0x7d;break;
344 ; SOURCE LINE # 57
005C 345 ?C0017:
005C 75007D F 346 MOV l?241,#07DH
005F 8008 347 SJMP ?C0009
348 ; case 0xbf:l=0x07;break;
349 ; SOURCE LINE # 58
0061 350 ?C0018:
0061 750007 F 351 MOV l?241,#07H
0064 8003 352 SJMP ?C0009
353 ; case 0x7f:l=0x01;break;
354 ; SOURCE LINE # 59
0066 355 ?C0019:
0066 750001 F 356 MOV l?241,#01H
357 ; default: break; //读键值
358 ; SOURCE LINE # 60
359 ; }
360 ; SOURCE LINE # 61
361 ; }
362 ; SOURCE LINE # 62
363 ; }
364 ; SOURCE LINE # 63
0069 365 ?C0009:
366 ; return l;
367 ; SOURCE LINE # 64
0069 AF00 F 368 MOV R7,l?241
369 ; }
370 ; SOURCE LINE # 65
006B 371 ?C0021:
006B 22 372 RET
373 ; END OF kbscan1
374
375 ;
376 ; /*=========键盘扫描函数2==========*/
377 ;
378 ;
379 ;
380 ; uchar kbscan2()
381
---- 382 RSEG ?PR?kbscan2?1
0000 383 kbscan2:
384 USING 0
385 ; SOURCE LINE # 71
386 ; {
387 ; SOURCE LINE # 72
388 ; uchar l=0;
A51 MACRO ASSEMBLER 1 06/10/2007 20:32:48 PAGE 7
389 ; SOURCE LINE # 73
0000 E4 390 CLR A
0001 F500 F 391 MOV l?342,A
392 ; P1=0xff;
393 ; SOURCE LINE # 74
0003 7590FF 394 MOV P1,#0FFH
395 ; if(P1==0xff) //没有键按下
396 ; SOURCE LINE # 75
0006 E590 397 MOV A,P1
0008 B4FF05 398 CJNE A,#0FFH,?C0022
000B 399 ?C0023:
400 ; while(1)
401 ; SOURCE LINE # 76
402 ; {
403 ; SOURCE LINE # 77
404 ; if(P1!=0xff)
405 ; SOURCE LINE # 78
000B E590 406 MOV A,P1
000D F4 407 CPL A
000E 60FB 408 JZ ?C0023
409 ; break;
410 ; SOURCE LINE # 79
411 ; }
412 ; SOURCE LINE # 80
0010 413 ?C0022:
414 ; if(P1!=0xff) //有键按下
415 ; SOURCE LINE # 81
0010 E590 416 MOV A,P1
0012 F4 417 CPL A
0013 6054 418 JZ ?C0026
419 ; {
420 ; SOURCE LINE # 82
421 ; delay(0x04e1); //延时10毫秒
422 ; SOURCE LINE # 83
0015 7FE1 423 MOV R7,#0E1H
0017 7E04 424 MOV R6,#04H
0019 120000 F 425 LCALL _delay
426 ; if(P1!=0xff) //确有键按下
427 ; SOURCE LINE # 84
001C E590 428 MOV A,P1
001E F4 429 CPL A
001F 6048 430 JZ ?C0026
431 ; {
432 ; SOURCE LINE # 85
433 ; switch(P1)
434 ; SOURCE LINE # 86
0021 AF90 435 MOV R7,P1
0023 EF 436 MOV A,R7
0024 2481 437 ADD A,#081H
0026 603E 438 JZ ?C0036
0028 24C0 439 ADD A,#0C0H
002A 6035 440 JZ ?C0035
002C 24E0 441 ADD A,#0E0H
002E 602C 442 JZ ?C0034
0030 24F0 443 ADD A,#0F0H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -