📄 ch452xs.lst
字号:
285 0724 0084 movwf 4
286 0725 1383 bcf 3,7
287 0726 0800 movf 0,w
288 0727 00F0 movwf btemp
289 0728 0A84 incf 4
290 0729 0800 movf 0,w
291 072A 00F1 movwf btemp+1
292 072B 0870 movf btemp,w
293 072C 00A0 movwf ?a_Bit_Display_Num
294 072D 0871 movf btemp+1,w
295 072E 00A1 movwf ?a_Bit_Display_Num+1
296 072F 0820 movf ?_Bit_Display_Num,w
297 0730 0720 addwf ?_Bit_Display_Num,w
298 0731 3E56 addlw _Bitmap
299 0732 0084 movwf 4
300 0733 0800 movf 0,w
301 0734 00F0 movwf btemp
302 0735 0A84 incf 4
303 0736 0800 movf 0,w
304 0737 00F1 movwf btemp+1
305 0738 0820 movf ?a_Bit_Display_Num,w
306 0739 07F0 addwf btemp
307 073A 1803 btfsc 3,0
308 073B 0AF1 incf btemp+1
309 073C 0821 movf ?a_Bit_Display_Num+1,w
310 073D 07F1 addwf btemp+1
311 073E 0870 movf btemp,w
312 073F 00A0 movwf ?_WrietCh452
313 0740 0871 movf btemp+1,w
314 0741 00A1 movwf ?_WrietCh452+1
315 0742 120A 118A 2F75 ljmp _WrietCh452
316
317 psect text4
318 ;ch452.h: 107: void Display_Reset()
319 ;ch452.h: 108: {
320 06DA _Display_Reset
321 ;ch452.h: 110: WrietCh452(0x201);
322 06DA 3001 movlw 1
323 06DB 0183 clrf 3 ;select bank 0
324 06DC 00A0 movwf ?_WrietCh452
325 06DD 3002 movlw 2
326 06DE 00A1 movwf ?_WrietCh452+1
327 06DF 120A 118A 2F75 ljmp _WrietCh452
328
329 psect text5
330 06E2 _Flash_SingleBit
331 ;ch452.h: 117: WrietCh452(0x0600+(0x01<<bitnumb
+ er));
332 06E2 0183 clrf 3 ;select bank 0
333 06E3 0820 movf ?_Flash_SingleBit,w
334 06E4 00F2 movwf btemp+2
335 06E5 3001 movlw 1
336 06E6 00F0 movwf btemp
337 06E7 3000 movlw 0
338 06E8 01F1 clrf btemp+1
339 06E9 0AF2 incf btemp+2
340 06EA 2EEE goto u34
341 06EB u35
342 06EB 1003 bcf 3,0
343 06EC 0DF0 rlf btemp
344 06ED 0DF1 rlf btemp+1
345 06EE u34
346 06EE 0BF2 decfsz btemp+2
347 06EF 2EEB goto u35
348 06F0 3000 movlw 0
349 06F1 0770 addwf btemp,w
350 06F2 00A0 movwf ?_WrietCh452
351 06F3 3006 movlw 6
352 06F4 1803 btfsc 3,0
353 06F5 3007 movlw 7
354 06F6 0771 addwf btemp+1,w
355 06F7 00A1 movwf ?_WrietCh452+1
356 06F8 120A 118A 2F75 ljmp _WrietCh452
357
358 psect text6
359 ;ch452.h: 122: void Flash_AllBit()
360 ;ch452.h: 123: {
361 06D2 _Flash_AllBit
362 ;ch452.h: 124: WrietCh452(0x0600+0xff);
363 06D2 30FF movlw 255
364 06D3 0183 clrf 3 ;select bank 0
365 06D4 00A0 movwf ?_WrietCh452
366 06D5 3006 movlw 6
367 06D6 00A1 movwf ?_WrietCh452+1
368 06D7 120A 118A 2F75 ljmp _WrietCh452
369
370 psect text7
371 ;ch452.h: 131: uint ReadCh452()
372 ;ch452.h: 132: {
373 0745 _ReadCh452
374 ; _cmd assigned to ?a_ReadCh452+0
375 0000 _ReadCh452$cmd set ?a_ReadCh452
376 ; _keycode assigned to ?a_ReadCh452+1
377 0000 _ReadCh452$keycode set ?a_ReadCh452+1
378 ; _q0 assigned to ?a_ReadCh452+2
379 0000 _ReadCh452$q0 set ?a_ReadCh452+2
380 ;ch452.h: 133: uchar q0;
381 0745 120B bcf 11,4
382 ;ch452.h: 136: cmd=0x07;
383 0746 3007 movlw 7
384 0747 1283 bcf 3,5
385 0748 1303 bcf 3,6 ;carry unused
386 0749 00A8 movwf ?a_ReadCh452
387 ;ch452.h: 137: (RD2=0);
388 074A 1108 bcf 8,2
389 ;ch452.h: 138: for(q0=0;q0<4;q0++)
390 074B 01AA clrf ?a_ReadCh452+2
391 074C l14
392 ;ch452.h: 139: {
393 ;ch452.h: 140: if ((cmd&0x1)==1)
394 074C 1C28 btfss ?a_ReadCh452,0
395 074D 2F50 goto l17
396 ;ch452.h: 141: (RD1=1);
397 074E 1488 bsf 8,1
398 ;ch452.h: 142: else
399 074F 2F51 goto l18
400 0750 l17
401 ;ch452.h: 143: (RD1=0);
402 0750 1088 bcf 8,1
403 0751 l18
404 ;ch452.h: 144: (RD0=0);
405 0751 1008 bcf 8,0
406 ;ch452.h: 145: cmd>>=1;
407 0752 1003 bcf 3,0
408 0753 0CA8 rrf ?a_ReadCh452
409 ;ch452.h: 146: (RD0=1);
410 0754 1408 bsf 8,0
411 ;ch452.h: 147: }
412 0755 0AAA incf ?a_ReadCh452+2
413 0756 3004 movlw 4
414 0757 022A subwf ?a_ReadCh452+2,w
415 0758 1C03 btfss 3,0
416 0759 2F4C goto l14
417 ;ch452.h: 148: (RD2=1);
418 075A 1508 bsf 8,2
419 ;ch452.h: 149: keycode=0;
420 075B 01A9 clrf ?a_ReadCh452+1
421 ;ch452.h: 150: for(q0=0;q0<7;q0++)
422 075C 01AA clrf ?a_ReadCh452+2
423 ;ch452.h: 151: {
424 ;ch452.h: 152: keycode<<=1;
425 075D 1003 bcf 3,0
426 075E L1
427 075E 0DA9 rlf ?a_ReadCh452+1
428 ;ch452.h: 153: keycode|=RB0;
429 075F 3000 movlw 0
430 0760 1806 btfsc 6,0
431 0761 3001 movlw 1
432 0762 04A9 iorwf ?a_ReadCh452+1
433 ;ch452.h: 154: (RD0=0);
434 0763 1008 bcf 8,0
435 ;ch452.h: 155: (RD0=1);
436 0764 1408 bsf 8,0
437 ;ch452.h: 156: }
438 0765 0AAA incf ?a_ReadCh452+2
439 0766 3007 movlw 7
440 0767 022A subwf ?a_ReadCh452+2,w
441 0768 1C03 btfss 3,0
442 0769 2F5E goto L1
443 ;ch452.h: 157: (INTF=0);
444 076A 108B bcf 11,1
445 ;ch452.h: 158: (INTE=1);
446 076B 160B bsf 11,4
447 ;ch452.h: 159: return(keycode);
448 076C 0829 movf ?a_ReadCh452+1,w
449 076D 00F0 movwf btemp
450 076E 01F1 clrf btemp+1
451 ;ch452.h: 160: }
452 076F 0008 return
453
454 psect text9
455 06FB _intBit_Display_Num
456 ;ch452.h: 190: intWrietCh452(Bitmap[bite]+Led_s
+ eg[buf]);
457 06FB 0183 clrf 3 ;select bank 0
458 06FC 082A movf ?_intBit_Display_Num+2,w
459 06FD 072A addwf ?_intBit_Display_Num+2,w
460 06FE 3E32 addlw _Led_seg
461 06FF 0084 movwf 4
462 0700 1383 bcf 3,7
463 0701 0800 movf 0,w
464 0702 00F0 movwf btemp
465 0703 0A84 incf 4
466 0704 0800 movf 0,w
467 0705 00F1 movwf btemp+1
468 0706 0870 movf btemp,w
469 0707 00AC movwf ?a_intBit_Display_Num
470 0708 0871 movf btemp+1,w
471 0709 00AD movwf ?a_intBit_Display_Num+1
472 070A 0828 movf ?_intBit_Display_Num,w
473 070B 0728 addwf ?_intBit_Display_Num,w
474 070C 3E56 addlw _Bitmap
475 070D 0084 movwf 4
476 070E 0800 movf 0,w
477 070F 00F0 movwf btemp
478 0710 0A84 incf 4
479 0711 0800 movf 0,w
480 0712 00F1 movwf btemp+1
481 0713 082C movf ?a_intBit_Display_Num,w
482 0714 07F0 addwf btemp
483 0715 1803 btfsc 3,0
484 0716 0AF1 incf btemp+1
485 0717 082D movf ?a_intBit_Display_Num+1,w
486 0718 07F1 addwf btemp+1
487 0719 0870 movf btemp,w
488 071A 00AE movwf ?_intWrietCh452
489 071B 0871 movf btemp+1,w
490 071C 00AF movwf ?_intWrietCh452+1
491 071D 120A 118A 2F8F ljmp _intWrietCh452
492
493 psect intcode
494 ;ch452xs.c: 30: void interrupt keyint()
495 ;ch452xs.c: 31: {
496 0011 _keyint
497 0011 int_func
498 ; _k assigned to ?a_keyint+0
499 0000 _keyint$k set ?a_keyint
500 ; _key assigned to ?a_keyint+2
501 0000 _keyint$key set ?a_keyint+2
502 ;ch452xs.c: 32: uint key,k;
503 0011 120A 118A 2745 fcall _ReadCh452
504 0014 0870 movf btemp,w
505 0015 00A6 movwf ?a_keyint+2
506 0016 0871 movf btemp+1,w
507 0017 00A7 movwf ?a_keyint+3
508 ;ch452xs.c: 35: k=key%16;
509 0018 300F movlw 15
510 0019 0526 andwf ?a_keyint+2,w
511 001A 00A4 movwf ?a_keyint
512 001B 01A5 clrf ?a_keyint+1
513 ;ch452xs.c: 36: intBit_Display_Num(0,k);
514 001C 01A8 clrf ?_intBit_Display_Num
515 001D 01A9 clrf ?_intBit_Display_Num+1
516 001E 00AA movwf ?_intBit_Display_Num+2
517 001F 0825 movf ?a_keyint+1,w
518 0020 00AB movwf ?_intBit_Display_Num+3
519 0021 120A 118A 26FB fcall _intBit_Display_Num
+ 120A 118A
520
521 psect intsave_0
522 0073 saved_w
523 0073 ds 1
524
525 psect intret
526 002A 0867 movf saved_fsr,w
527 002B 0084 movwf 4 ;restore FSR
528 002C 0868 movf saved_pclath,w
529 002D 008A movwf 10
530 002E int_restore
531 002E 0866 movf saved_status,w
532 002F 0083 movwf 3
533 0030 0EF3 swapf saved_w
534 0031 0E73 swapf saved_w,w
535 0032 0009 retfie
536
537 psect intentry
538 0004 int_entry
539 0004 00F3 movwf saved_w
540 0005 0803 movf 3,w
541 0006 0183 clrf 3
542 0007 00E6 movwf saved_status
543 0008 0804 movf 4,w
544 0009 00E7 movwf saved_fsr
545 000A 080A movf 10,w
546 000B 00E8 movwf saved_pclath
547 000C 018A clrf 10
548 0000
549 0000
550 0000
551 0000
552 0000
553 0000
554 0000
555 0000
556 0000
557 0000
558 0000
559 0000
560 0000
561 0000
562 0000
563 0000
564 0000
565 0000
566 0000
567 0000
568 0000
569 0000
570 0000
571 0000
572 0000
573 0000
574 0000
575 0000
576 0000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -