📄 时钟备份.lst
字号:
356: 0348 E5 47 mov a,47h
357: 034A B4 0B 26 cjne a,#11,w1
358: 034D E5 42 w2: mov a,42h
359: 034F C5 38 xch a,week
360: 0351 F5 42 mov 42h,a
361: 0353 20 B3 3E jb p3.3,key33
362: 0356 12 06 13 call DELAY5MS
363: 0359 12 06 13 call DELAY5MS
364: 035C 20 B3 35 JB P3.3,key33
365: 035F C2 8C clr tr0
366: 0361 E5 42 mov a,42h
367: 0363 B4 08 1C cjne a,#8,w3
368: 0366 05 38 w4: INC week
369: 0368 E5 38 MOV A,week
370: 036A B4 07 21 CJNE A,#7,key3over
371: 036D 75 38 00 MOV week,#00H
372: 0370 02 02 4D ljmp key1over
373: 0373 85 47 3A w1: mov hour0,47h
374: 0376 85 48 39 mov hour1,48h
375: 0379 75 47 0B mov 47h,#11
376: 037C 75 48 0B mov 48h,#11
377: 037F 02 03 4D ljmp w2
378: 0382 85 42 38 w3: mov week,42h
379: 0385 75 42 08 mov 42h,#8
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 8
Line I Addr Code Source
380: 0388 02 03 66 ljmp w4
381: 038B 02 03 C0 key4ljmp:ljmp key4
382: 038E 20 B3 03 key3over:JB P3.3,key33
383: 0391 02 03 8E lJMP key3over
384:
385:
386: 0394 20 B4 29 key33: jb p3.4,key4;星期减1
387: 0397 12 06 13 call DELAY5MS
388: 039A 20 B4 23 jb p3.4, key4
389: 039D C2 8C clr tr0
390: 039F E5 42 mov a,42h
391: 03A1 B4 08 0B cjne a,#8,ww1
392: 03A4 E5 38 ww2: mov a,week
393: 03A6 B4 00 0F cjne a,#0,a2
394: 03A9 75 38 06 mov week,#6
395: 03AC 02 03 BA ljmp key33over
396: 03AF 85 42 38 ww1: mov week,42h
397: 03B2 75 42 08 mov 42h,#8
398: 03B5 02 03 A4 ljmp ww2
399: 03B8 15 38 a2: dec week
400: 03BA 20 B4 03 key33over:JB P3.4,key4
401: 03BD 02 03 BA lJMP key33over
402:
403: ;日调整
404: 03C0 E5 3F key4: mov a,hh;日加1
405: 03C2 B4 05 39 cjne a,#5,key5ljmp
406: 03C5 E5 42 mov a,42h
407: 03C7 B4 08 37 cjne a,#8,dd
408: 03CA E5 49 ddd: mov a,49h
409: 03CC C5 37 xch a,day0
410: 03CE F5 49 mov 49h,a
411: 03D0 E5 4A mov a,4ah
412: 03D2 C5 36 xch a,day1
413: 03D4 F5 4A mov 4ah,a
414: 03D6 20 B3 50 jb p3.3,key44
415: 03D9 12 06 13 CALL DELAY5MS
416: 03DC 12 06 13 call delay5ms
417: 03DF 20 B3 47 jb p3.3,key44
418: 03E2 C2 8C clr tr0
419: 03E4 E5 49 mov a,49h
420: 03E6 B4 0B 21 cjne a,#11,dddd
421: 03E9 05 37 ddddd: INC day0
422: 03EB E5 36 mov a,day1
423: 03ED B4 03 29 cjne a,#3,dayy
424: 03F0 E5 37 MOV A,day0
425: 03F2 B4 02 2E CJNE A,#2,key4over
426: 03F5 75 37 01 mov day0,#1
427: 03F8 75 36 00 mov day1,#00h
428: 03FB 02 04 23 ljmp key4over
429: 03FE 02 04 6B key5ljmp:ljmp key5
430: 0401 85 42 38 dd: mov week,42h
431: 0404 75 42 08 mov 42h,#8
432: 0407 02 03 CA ljmp ddd
433: 040A 85 49 37 dddd: mov day0,49h
434: 040D 85 4A 36 mov day1,4ah
435: 0410 75 49 0B mov 49h,#11
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 9
Line I Addr Code Source
436: 0413 75 4A 0B mov 4ah,#11
437: 0416 02 03 E9 ljmp ddddd
438: 0419 E5 37 dayy: mov a,day0
439: 041B B4 0A 05 cjne a,#10,key4over
440: 041E 75 37 00 MOV day0,#00H
441: 0421 05 36 INC day1
442: 0423 20 B3 03 key4over:JB P3.3,key44
443: 0426 02 04 23 lJMP key4over
444:
445:
446: 0429 20 B4 3F key44: jb p3.4,key5;日减1
447: 042C 12 06 13 call DELAY5MS
448: 042F 20 B4 39 jb p3.4,key5
449: 0432 C2 8C clr tr0
450: 0434 E5 49 mov a,49h
451: 0436 B4 0B 13 cjne a,#11,d2
452: 0439 E5 37 d3: mov a,day0
453: 043B B4 00 25 cjne a,#0,d4
454: 043E E5 36 mov a,day1
455: 0440 B4 00 18 cjne a,#0,d0
456: 0443 75 37 01 mov day0,#1
457: 0446 75 36 03 mov day1,#3
458: 0449 02 04 65 ljmp key44over
459: 044C 85 49 37 d2: mov day0,49h
460: 044F 85 4A 36 mov day1,4ah
461: 0452 75 49 0B mov 49h,#11
462: 0455 75 4A 0B mov 4ah,#11
463: 0458 02 04 39 ljmp d3
464: 045B 75 37 09 d0: mov day0,#9
465: 045E 15 36 dec day1
466: 0460 02 04 65 ljmp key44over
467: 0463 15 37 d4: dec day0
468: 0465 20 B4 03 key44over:JB P3.4,key5
469: 0468 02 04 65 lJMP key44over
470:
471:
472: ;月调整程序
473: 046B E5 3F key5: mov a,hh;月调整加1
474: 046D B4 06 57 cjne a,#6,key6ljmp
475: 0470 E5 49 mov a,49h
476: 0472 B4 0B 34 cjne a,#11,mm
477: 0475 E5 4B mmm: mov a,4bh
478: 0477 C5 35 xch a,munth0
479: 0479 F5 4B mov 4bh,a
480: 047B E5 4C mov a,4ch
481: 047D C5 34 xch a,munth1
482: 047F F5 4C mov 4ch,a
483: 0481 20 B3 56 jb p3.3,key55
484: 0484 12 06 13 CALL DELAY5MS
485: 0487 12 06 13 call delay5ms
486: 048A 20 B3 4D jb p3.3,key55
487: 048D C2 8C clr tr0
488: 048F E5 4B mov a,4bh
489: 0491 B4 0B 24 cjne a,#11,mmmm
490: 0494 05 35 mmmmm: INC munth0
491: 0496 E5 34 mov a,munth1
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 10
Line I Addr Code Source
492: 0498 B4 01 2F cjne a,#1,munthh
493: 049B E5 35 MOV A,munth0
494: 049D B4 03 34 CJNE A,#3,key5over
495: 04A0 75 35 01 mov munth0,#1
496: 04A3 75 34 00 mov munth1,#00h
497: 04A6 02 04 D4 ljmp key5over
498: 04A9 85 49 37 mm: mov day0,49h
499: 04AC 85 4A 36 mov day1,4ah
500: 04AF 75 49 0B mov 49h,#11
501: 04B2 75 4A 0B mov 4ah,#11
502: 04B5 02 04 75 ljmp mmm
503: 04B8 85 4B 35 mmmm: mov munth0,4bh
504: 04BB 85 4C 34 mov munth1,4ch
505: 04BE 75 4B 0B mov 4bh,#11
506: 04C1 75 4C 0B mov 4ch,#11
507: 04C4 02 04 94 ljmp mmmmm
508: 04C7 02 05 1C key6ljmp:ljmp key6
509: 04CA E5 35 munthh: mov a,munth0
510: 04CC B4 0A 05 cjne a,#10,key5over
511: 04CF 75 35 00 MOV munth0,#00H
512: 04D2 05 34 INC munth1
513: 04D4 20 B3 03 key5over:JB P3.3,key55
514: 04D7 02 04 D4 lJMP key5over
515:
516:
517: 04DA 20 B4 3F key55: jb p3.4,key6;月减1
518: 04DD 12 06 13 call DELAY5MS
519: 04E0 20 B4 39 jb p3.4, KEY6
520: 04E3 C2 8C clr tr0
521: 04E5 E5 4B mov a,4bh
522: 04E7 B4 0B 13 cjne a,#11,m0
523: 04EA E5 35 m1: mov a,munth0
524: 04EC B4 00 25 cjne a,#0,m2
525: 04EF E5 34 mov a,munth1
526: 04F1 B4 00 18 cjne a,#0,m3
527: 04F4 75 35 02 mov munth0,#2
528: 04F7 75 34 01 mov munth1,#1
529: 04FA 02 05 16 ljmp key55over
530: 04FD 85 4B 35 m0: mov munth0,4bh
531: 0500 85 4C 34 mov munth1,4ch
532: 0503 75 4B 0B mov 4bh,#11
533: 0506 75 4C 0B mov 4ch,#11
534: 0509 02 04 EA ljmp m1
535: 050C 75 35 09 m3: mov munth0,#9
536: 050F 15 34 dec munth1
537: 0511 02 05 16 ljmp key55over
538: 0514 15 35 m2: dec munth0
539: 0516 20 B4 03 key55over:JB P3.4,key6
540: 0519 02 05 16 lJMP key55over
541:
542:
543: ;年调整程序
544: 051C E5 3F key6: mov a,hh;年加1
545: 051E B4 07 47 cjne a,#7,loop4ljmp
546: 0521 E5 4B mov a,4bh
547: 0523 B4 0B 33 cjne a,#11,yy
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 11
Line I Addr Code Source
548: 0526 E5 4D yyy: mov a,4dh
549: 0528 C5 33 xch a,year0
550: 052A F5 4D mov 4dh,a
551: 052C E5 4E mov a,4eh
552: 052E C5 32 xch a,year1
553: 0530 F5 4E mov 4eh,a
554: 0532 20 B3 4B jb p3.3,key66
555: 0535 12 06 13 call DELAY5MS
556: 0538 20 B3 45 JB P3.3,key66
557: 053B C2 8C clr tr0
558: 053D E5 4D mov a,4dh
559: 053F B4 0B 29 cjne a,#11,yyyy
560: 0542 05 33 yyyyy: INC year0
561: 0544 E5 33 MOV A,year0
562: 0546 B4 0A 31 CJNE A,#10,key6over
563: 0549 75 33 00 MOV year0,#00H
564: 054C 05 32 inc year1
565: 054E E5 32 mov a,year1
566: 0550 B4 0A 66 cjne a,#10,key66over
567: 0553 75 32 00 MOV year1,#00H
568: 0556 02 05 7A ljmp key6over
569: 0559 85 4B 35 yy: mov munth0,4bh
570: 055C 85 4C 34 mov munth1,4ch
571: 055F 75 4B 0B mov 4bh,#11
572: 0562 75 4C 0B mov 4ch,#11
573: 0565 02 05 26 ljmp yyy
574: 0568 02 05 BF loop4ljmp:ljmp loop4
575: 056B 85 4D 33 yyyy: mov year0,4dh
576: 056E 85 4E 32 mov year1,4eh
577: 0571 75 4D 0B mov 4dh,#11
578: 0574 75 4E 0B mov 4eh,#11
579: 0577 02 05 42 ljmp yyyyy
580: 057A 20 B3 03 key6over:JB P3.3,key66
581: 057D 02 05 7A lJMP key6over
582:
583:
584: 0580 20 B4 3C key66: jb p3.4,loop4;年减1
585: 0583 12 06 13 call DELAY5MS
586: 0586 20 B4 36 jb p3.4, loop4
587: 0589 C2 8C clr tr0
588: 058B E5 4D mov a,4dh
589: 058D B4 0B 13 cjne a,#11,y1
590: 0590 E5 33 y2: mov a,year0
591: 0592 B4 00 22 cjne a,#0,y3
592: 0595 75 33 09 mov year0,#9
593: 0598 E5 32 mov a,year1
594: 059A B4 00 15 cjne a,#0,y4
595: 059D 75 32 09 mov year1,#9
596: 05A0 02 05 B9 ljmp key66over
597: 05A3 85 4D 33 y1: mov year0,4dh
598: 05A6 85 4E 32 mov year1,4eh
599: 05A9 75 4D 0B mov 4dh,#11
600: 05AC 75 4E 0B mov 4eh,#11
601: 05AF 02 05 90 ljmp y2
602: 05B2 15 32 y4: dec year1
603: 05B4 02 05 B9 ljmp key66over
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 12
Line I Addr Code Source
604: 05B7 15 33 y3: dec year0
605: 05B9 20 B4 03 key66over:JB P3.4,loop4
606: 05BC 02 05 B9 lJMP key66over
607:
608:
609: 05BF D2 8C loop4: setb tr0
610: 05C1 02 00 72 ljmp disp
611:
612:
613: 05C4 LCDRESET: ;初始化程序
614: 05C4 12 06 13 CALL DELAY5MS ;延时15MS
615: 05C7 12 06 13 CALL DELAY5MS
616: 05CA 12 06 13 CALL DELAY5MS
617: 05CD 74 38 MOV A,#38H ;显示模式设置(不检测忙信号)
618: 05CF 12 05 FA CALL LCDWCN ;共三次
619: 05D2 12 06 13 CALL DELAY5MS
620: 05D5 74 38 MOV A,#38H
621: 05D7 12 05 FA CALL LCDWCN
622: 05DA 12 06 13 CALL DELAY5MS
623: 05DD 74 38 MOV A,#38H
624: 05DF 12 05 FA CALL LCDWCN
625:
626: 05E2 74 38 MOV A,#38H ;显示模式设置(以后均检测忙信号)
627: 05E4 12 05 F7 CALL LCDWC
628: 05E7 74 0C MOV A,#0CH ;显示关闭
629: 05E9 12 05 F7 CALL LCDWC
630: 05EC 74 06 MOV A,#06H ;显示清屏
631: 05EE 12 05 F7 CALL LCDWC
632: 05F1 74 80 MOV A,#80H
633: 05F3 12 05 F7 CALL LCDWC
634: 05F6 22 RET
635: 05F7 LCDWC: ;送控制字子程序(检测忙信号)
636: 05F7 12 06 07 CALL WAITIDLE
637: 05FA LCDWCN: ;送控制字子程序(不检测忙信号)
638: 05FA 90 04 00 MOV DPTR,#CSADDR ;CS=1 RS=0 RW=0
639: 05FD F0 MOVX @DPTR,A
640: 05FE 22 RET
641: 05FF LCDWD: ;写字符子程序
642: 05FF 12 06 07 CALL WAITIDLE
643: 0602 90 14 00 MOV DPTR,#CSADDR+RSADDR ;CS=1 RS=1 RW=0
644: 0605 F0 MOVX @DPTR,A
645: 0606 22 RET
646: 0607 WAITIDLE:
647: 0607 C0 E0 PUSH ACC ;正常读写操作之前必须检测LCD控制器状态
648: 0609 90 24 00 MOV DPTR,#CSADDR+RWADDR ;CS=1 RS=0 RW=1
649: 060C E0 WTD_PA: MOVX A,@DPTR ;DB7: 0 LCD控制器空闲
650: 060D 20 E7 FC JB ACC.7,WTD_PA ; 1 LCD控制器忙
651: 0610 D0 E0 POP ACC
652: 0612 22 RET
653: 0613 DELAY5MS:
654: 0613 79 19 MOV R1,#25 ;延时子程序(5MS)
655: 0615 7A 64 DL5_PA: MOV R2,#100
656: 0617 DA FE DJNZ R2,$
657: 0619 D9 FA DJNZ R1,DL5_PA
658: 061B 22 RET
659: 061C DELAY400MS:
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 13
Line I Addr Code Source
660: 061C 78 14 MOV R0,#20 ;延时子程序(400MS)
661: 061E 79 64 DL4_PA: MOV R1,#100
662: 0620 7A 64 DL4_PB: MOV R2,#100
663: 0622 DA FE DJNZ R2,$
664: 0624 D9 FA DJNZ R1,DL4_PB
665: 0626 D8 F6 DJNZ R0,DL4_PA
666: 0628 22 RET
667:
668:
669: 0629 C0 E0 TIMER01: PUSH ACC
670: 062B C0 D0 PUSH PSW
671: 062D 75 8C B0 MOV TH0,#0B0H
672: 0630 75 8A 3C MOV TL0,#3CH
673: 0633 05 31 inc num
674: 0635 E5 31 mov a,num
675: 0637 B4 14 70 cjne a,#20,ljmploop1
676: 063A 75 31 00 mov num,#00h
677: 063D E5 43 mov a,43h
678: 063F B4 0B 6B cjne a,#11,ljmpsec_1
679: 0642 05 3E sec_2: INC sec0
680: 0644 E5 3E MOV A,sec0
681: 0646 B4 0A 61 CJNE A,#10,ljmploop1
682: 0649 75 3E 00 MOV sec0,#00H
683: 064C 05 3D INC sec1
684: 064E E5 3D MOV A,sec1
685: 0650 B4 06 57 CJNE A,#6,ljmploop1
686: 0653 75 3D 00 MOV sec1,#00H
687: 0656 E5 45 mov a,45h
688: 0658 B4 0B 55 cjne a,#11,ljmpmin_1
689: 065B 05 3C min_2: INC min0
690: 065D E5 3C MOV A,min0
691: 065F B4 0A 48 CJNE A,#10,ljmploop1
692: 0662 75 3C 00 MOV min0,#00H
693: 0665 05 3B INC min1
694: 0667 E5 3B MOV A,min1
695: 0669 B4 06 3E CJNE A,#06,ljmploop1
696: 066C 75 3B 00 MOV min1,#00H
697: 066F 05 3A inc hour0
698: 0671 E5 39 mov a,hour1
699: 0673 B4 02 3D cjne a,#2,hourr
700: 0676 E5 3A mov a,hour0
701: 0678 B4 04 2F cjne a,#4,ljmploop1
702: 067B 75 3A 00 mov hour0,#00h
703: 067E 75 39 00 mov hour1,#00h
704: 0681 05 38 inc week
705: 0683 E5 38 mov a,week
706: 0685 B4 07 03 cjne a,#7,day
707: 0688 75 38 00 mov week,#00h
708: 068B 05 37 day: inc day0
709: 068D E5 34 mov a,munth1
710: 068F B4 00 63 cjne a,#0,zz1
711: 0692 E5 35 mov a,munth0
712: 0694 B4 01 33 cjne a,#1,munth2
713: 0697 E5 36 dmunth: MOV A,DAY1
714: 0699 B4 03 21 CJNE A,#3,zz3
715: 069C E5 37 mov a,day0
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 14
Line I Addr Code Source
716: 069E B4 02 09 cjne a,#2,ljmploop1
717: 06A1 75 36 00 mov day1,#0
718: 06A4 75 37 01 mov day0,#1
719: 06A7 02 07 67 ljmp munthadd
720: 06AA 02 07 95 ljmploop1:ljmp loop1
721: 06AD 02 07 9A ljmpsec_1:ljmp sec_1
722: 06B0 02 07 A9 ljmpmin_1:ljmp min_1
723: 06B3 E5 3A hourr: mov a,hour0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -