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

📄 52.lst

📁 电子万年历 已经过实物检测
💻 LST
📖 第 1 页 / 共 4 页
字号:
A51 MACRO ASSEMBLER  52                                                                   03/31/2008 19:12:35 PAGE     1


MACRO ASSEMBLER A51 V7.10
OBJECT MODULE PLACED IN 52.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE 52.ASM SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

  007F                 1       CONFIG12 EQU 7FH
  0021                 2       TEMPH EQU 21H
  0020                 3       TEMPL EQU 20H
  0022                 4       REG2 EQU 22H
  0023                 5       REG3 EQU 23H
  0024                 6       REG4 EQU 24H
  0087                 7       DAT EQU P0.7
  00B4                 8       SCLK  EQU P3.4
  00B3                 9       IO   EQU P3.3
  00B2                10       RST  EQU P3.2
  0066                11       year DATA 66H
  0065                12       month DATA 65H
  0064                13       week DATA 64H
  0063                14       day  DATA 63H
  0062                15       hour DATA 62H
  0061                16       mintue DATA 61H
  0060                17       second DATA 60H
                      18     
0000                  19       ORG 0000H
0000 02001E           20       LJMP  START
001B                  21       ORG 001BH
001B 0203ED           22       LJMP INTT1
                      23     
001E                  24     START:             ;初值
001E 120F30           25       LCALL ZJ
0021 D2AF             26       SETB EA
0023 758910           27       MOV TMOD,#10H    ;计数器1,方式1
0026 758B00           28       MOV TL1,#00H
0029 758D00           29       MOV TH1,#00H
002C 75328E           30       MOV 32H,#8EH
002F 753100           31       MOV 31H,#00H     ;允许写1302
0032 120489           32       LCALL WRITE
0035 753290           33       MOV 32H,#90H
0038 7531A6           34       MOV 31H,#0A6H   ;1302充电,充电电流1.1MA
003B 120489           35       LCALL WRITE
                      36       ;主程序~~~~~~~~~~~~~~~~~~~~~
003E                  37     MAIN1:
003E 75328D           38       MOV 32H,#8DH    ;读出年
0041 1204C1           39       LCALL  READ
0044 853166           40       MOV year,31H
                      41     
0047 75328B           42       MOV 32H,#8BH   ;读出星期
004A 1204C1           43       LCALL READ
004D 853164           44       MOV week,31H
                      45     
0050 753289           46       MOV 32H,#89H   ;读出月
0053 1204C1           47       LCALL READ
0056 853165           48       MOV month,31H
                      49     
0059 753287           50       MOV 32H,#87H  ;读出日
005C 1204C1           51       LCALL READ
005F 853163           52       MOV day,31H
                      53     
0062 753285           54       MOV 32H,#85H  ;读出小时
0065 1204C1           55       LCALL READ
0068 853162           56       MOV hour,31H
                      57     
006B 753283           58       MOV 32H,#83H  ;读出分钟
A51 MACRO ASSEMBLER  52                                                                   03/31/2008 19:12:35 PAGE     2

006E 1204C1           59       LCALL READ
0071 853161           60       MOV mintue,31H
                      61     
0074 753281           62       MOV 32H,#81H  ;读出秒
0077 1204C1           63       LCALL READ
007A 853160           64       MOV second,31H
                      65       ;~~~~~~~~~~~~分离缓存~~~~~~~~
007D A866             66       MOV R0,year    ;年分离,送显示缓存
007F 12047F           67       LCALL DIVIDE
0082 897B             68       MOV 7BH,R1
0084 894B             69       MOV 4BH,R1
0086 8A7C             70       MOV 7CH,R2
0088 8A4C             71       MOV 4CH,R2
008A 856478           72       MOV 78H,week
008D 856448           73       MOV 48H,week
0090 A865             74       MOV R0,month  ;月分离,送显示缓存
0092 12047F           75       LCALL DIVIDE
0095 8979             76       MOV 79H,R1
0097 8949             77       MOV 49H,R1
0099 8A7A             78       MOV 7AH,R2
009B 8A4A             79       MOV 4AH,R2
009D A863             80       MOV R0,day   ;日分离,送显示缓存
009F 12047F           81       LCALL DIVIDE
00A2 8976             82       MOV 76H,R1
00A4 8946             83       MOV 46H,R1
00A6 8A77             84       MOV 77H,R2
00A8 8A47             85       MOV 47H,R2
00AA A862             86       MOV R0,hour ;小时分离,送显示缓存
00AC 12047F           87       LCALL DIVIDE
00AF 8974             88       MOV 74H,R1
00B1 8944             89       MOV 44H,R1
00B3 8A75             90       MOV 75H,R2
00B5 8A45             91       MOV 45H,R2
00B7 A861             92       MOV R0,mintue ;分钟分离,送显示缓存
00B9 12047F           93       LCALL DIVIDE
00BC 8972             94       MOV 72H,R1
00BE 8942             95       MOV 42H,R1
00C0 8A73             96       MOV 73H,R2
00C2 8A43             97       MOV 43H,R2
00C4 A860             98       MOV R0,second  ;秒分离,送显示缓存
00C6 12047F           99       LCALL  DIVIDE
00C9 8970            100       MOV 70H,R1
00CB 8940            101       MOV 40H,R1
00CD 8A71            102       MOV 71H,R2
00CF 8A41            103       MOV 41H,R2
00D1 C2AF            104       CLR EA
00D3 1200F4          105       LCALL TOUTOU
00D6 120D11          106       LCALL NS
00D9 D2AF            107       SETB EA
00DB 120E8E          108       LCALL DISPLAY
00DE 120525          109       LCALL GENGXIAN    ;更新农历程序
00E1 308108          110       JNB P0.1,SETG111
00E4 30D508          111       JNB F0,SSS
00E7 C284            112       CLR P0.4         ;非闰月,则p0.4清零,指示灯亮
00E9 02003E          113       LJMP MAIN1
00EC                 114     SETG111:
00EC 0201BB          115       LJMP SETG
00EF                 116     SSS:
                     117       
00EF D284            118       SETB P0.4          ;闰月,则p0.4置位,指示灯不亮
00F1 02003E          119       LJMP MAIN1
                     120     
                     121     ;~~~~~~~~~~~~~~~~~~~~~~~~~  温度
                     122     
00F4                 123     TOUTOU:
00F4 12011B          124       LCALL CHUSHI
A51 MACRO ASSEMBLER  52                                                                   03/31/2008 19:12:35 PAGE     3

00F7 12012E          125       LCALL RDTEMP
00FA E520            126       MOV A,TEMPL
00FC 54F0            127       ANL A,#11110000B
00FE F520            128       MOV TEMPL,A
0100 E521            129       MOV A,TEMPH
0102 5407            130       ANL A,#00000111B
0104 4520            131       ORL A,TEMPL
0106 C4              132       SWAP A
0107 F525            133       MOV 25H,A
0109 E525            134       MOV A,25H
010B 75F064          135       MOV B,#64H
010E 84              136       DIV AB
010F E5F0            137       MOV A,B
0111 75F00A          138       MOV B,#0AH
0114 84              139       DIV AB
0115 C4              140       SWAP A
0116 45F0            141       ORL A,B
0118 F510            142       MOV 10H,A
011A 22              143       RET
011B                 144     CHUSHI:
011B 120156          145       LCALL RESET
011E 74CC            146       MOV A,#0CCH
0120 120180          147       LCALL WRITE111
0123 744E            148       MOV A,#4EH
0125 120180          149       LCALL WRITE111
0128 747F            150       MOV A,#CONFIG12
012A 120180          151       LCALL WRITE111
012D 22              152       RET
012E                 153     RDTEMP:
012E 120156          154       LCALL RESET
0131 74CC            155       MOV A,#0CCH
0133 120180          156       LCALL WRITE111
0136 7444            157       MOV A,#44H
0138 120180          158       LCALL WRITE111
013B 120F82          159       LCALL DL1MS
013E 120156          160       LCALL RESET
0141 74CC            161       MOV A,#0CCH
0143 120180          162       LCALL WRITE111
0146 74BE            163       MOV A,#0BEH
0148 120180          164       LCALL WRITE111
014B 12019C          165       LCALL ERAD111
014E F520            166       MOV TEMPL,A
0150 12019C          167       LCALL ERAD111
0153 F521            168       MOV TEMPH,A
0155 22              169       RET
0156                 170     RESET:
0156                 171     LA:
0156 D287            172       SETB DAT
0158 7552C8          173       MOV 52H,#200
015B                 174     LB:
015B C287            175       CLR DAT
015D D552FB          176       DJNZ 52H,LB
0160 D287            177       SETB DAT
0162 75521E          178       MOV 52H,#30
0165                 179     LC:
0165 D552FD          180       DJNZ 52H,LC
0168 C3              181       CLR C
0169 7287            182       ORL C,DAT
016B 40EE            183       JC LB
016D 755850          184       MOV 58H,#80
0170                 185     LD:
0170 7287            186       ORL C,DAT
0172 4005            187       JC LP
0174 D558F9          188       DJNZ 58H,LD
0177 80DD            189       SJMP LA
0179                 190     LP:
A51 MACRO ASSEMBLER  52                                                                   03/31/2008 19:12:35 PAGE     4

0179 7552FA          191       MOV 52H,#250
017C                 192     LF:
017C D552FD          193       DJNZ 52H,LF
017F 22              194       RET
0180                 195     WRITE111:
0180 755308          196       MOV 53H,#8
0183                 197     W51HA:
0183 D287            198       SETB DAT
0185 755408          199       MOV 54H,#8
0188 13              200       RRC A
0189 C287            201       CLR DAT
018B                 202     W52HA:
018B D554FD          203       DJNZ 54H,W52HA
018E 9287            204       MOV DAT,C
0190 75541E          205       MOV 54H,#30
0193                 206     W53HA:
0193 D554FD          207       DJNZ 54H,W53HA
0196 D553EA          208       DJNZ 53H,W51HA
0199 D287            209       SETB DAT
019B 22              210       RET
019C                 211     ERAD111:
019C C2AF            212       CLR EA
019E 755808          213       MOV 58H,#8
01A1                 214     RD1A:
01A1 C287            215       CLR DAT
01A3 755406          216       MOV 54H,#6
01A6 00              217       NOP
01A7 D287            218       SETB DAT
01A9                 219     RD2A:
01A9 D554FD          220       DJNZ 54H,RD2A
01AC A287            221       MOV C,DAT
01AE 13              222       RRC A
01AF 75551E          223       MOV 55H,#30
01B2                 224     RD3A:
01B2 D555FD          225       DJNZ 55H,RD3A
01B5 D558E9          226       DJNZ 58H,RD1A
01B8 D287            227       SETB DAT
01BA 22              228       RET
                     229     

⌨️ 快捷键说明

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