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

📄 数字钟1.lst

📁 自己做的单片机Proteus仿真实例
💻 LST
📖 第 1 页 / 共 2 页
字号:
A51 MACRO ASSEMBLER  数字钟1                                                              07/08/2012 20:42:57 PAGE     1


MACRO ASSEMBLER A51 V8.00
OBJECT MODULE PLACED IN 数字钟1.OBJ
ASSEMBLER INVOKED BY: F:\新建文件夹\新建文件夹 (2)\C51\BIN\A51.EXE 数字钟1.asm SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

  0030                 1     SECOND  EQU  30H
  0031                 2     MINUTE  EQU  31H
  0032                 3     HOUR    EQU  32H
  0033                 4     ALARM_SECOND  EQU  33H
  0034                 5     ALARM_MINUTE  EQU  34H
  0035                 6     ALARM_HOUR    EQU  35H
  0036                 7     CLOCK_SECOND  EQU  36H
  0037                 8     CLOCK_MINUTE  EQU  37H
  0038                 9     CLOCK_HOUR    EQU  38H
  0041                10     DAY   EQU  41H
  0042                11     MONTH EQU  42H
  0043                12     YEARL EQU  43H 
  0044                13     YEARH EQU  44H 
  0045                14     TCNT  EQU  45H
  0020                15     TIME1 BIT 20H   
  0021                16     TIME2 BIT 21H   
0000                  17               ORG 0000H
0000 020030           18               LJMP  START 
000B                  19               ORG 000BH
000B 0200DA           20               LJMP  T00
0030                  21               ORG 0030H
                      22     
0030 900286           23     START:  MOV DPTR,#TAB
0033 754500           24                     MOV TCNT,#0
0036 C220             25                     CLR TIME1
0038 C221             26                     CLR TIME2
003A 7B0A             27                     MOV  R3,#10
003C C297             28                     CLR  P1.7
003E 753807           29             MOV CLOCK_HOUR,#7
0041 75373B           30                     MOV CLOCK_MINUTE,#59
0044 753638           31                     MOV CLOCK_SECOND,#56
                      32                     
0047 753300           33                     MOV ALARM_SECOND,#0
004A 753400           34                     MOV ALARM_MINUTE,#0
004D 753507           35                     MOV ALARM_HOUR,#7
                      36     
0050 75411C           37                     MOV DAY,#28
0053 754202           38             MOV MONTH,#2
0056 754300           39                     MOV YEARL,#00
0059 754413           40                     MOV YEARH,#19
                      41     
005C 758901           42                     MOV TMOD,#01H
005F 758C3C           43                     MOV TH0,#(65536-50000)/256
0062 758AB0           44                     MOV TL0,#(65536-50000) MOD 256
0065 75A883           45                     MOV IE,#83H
0068 D28C             46                     SETB TR0
                      47     
006A 1201C8           48     A1:     LCALL  DISPLAY
006D 7590FF           49                     MOV  P1,#0FFH
0070 30920C           50                     JNB  P1.2,S1
0073 30931F           51                     JNB  P1.3,S2
0076 309433           52                     JNB  P1.4,S3
0079 3095B4           53                     JNB  P1.5,START
007C 02006A           54                     LJMP  A1
007F 12027D           55     S1:             LCALL  DELAY
0082 2092E5           56                     JB  P1.2,A1
0085 0536             57                     INC CLOCK_SECOND
0087 1201C8           58                     LCALL  DISPLAY
A51 MACRO ASSEMBLER  数字钟1                                                              07/08/2012 20:42:57 PAGE     2

008A E536             59                     MOV  A,CLOCK_SECOND
008C B43C33           60                     CJNE  A,#60,L1
008F 753600           61                     MOV  CLOCK_SECOND,#0
0092 02009B           62                     LJMP  K1
0095 12027D           63     S2:             LCALL  DELAY
0098 2093CF           64                     JB  P1.3,A1
009B E537             65     K1:             MOV   A,CLOCK_MINUTE
009D 04               66                     INC   A
009E F537             67                     MOV   CLOCK_MINUTE,A
00A0 1201C8           68                     LCALL  DISPLAY
                      69                     
00A3 B43C24           70                     CJNE  A,#60,L2
00A6 753700           71                     MOV  CLOCK_MINUTE,#0
00A9 0200B2           72                     LJMP  K2
00AC 12027D           73     S3:             LCALL  DELAY
00AF 2094B8           74                     JB  P1.4,A1
00B2 0538             75     K2:     INC CLOCK_HOUR
00B4 1201C8           76                     LCALL  DISPLAY
00B7 E538             77                     MOV  A,CLOCK_HOUR
00B9 B41816           78                     CJNE  A,#24,L3
00BC 753800           79                     MOV  CLOCK_HOUR,#0
00BF 02006A           80                     LJMP A1
                      81     
                      82     
00C2 2092A5           83     L1:             JB   P1.2,A1
00C5 1201C8           84                     LCALL   DISPLAY
00C8 80F8             85                 JMP  L1
00CA 20939D           86     L2:             JB   P1.3,A1
00CD 1201C8           87                     LCALL   DISPLAY
00D0 80F8             88                     JMP  L2
00D2 209495           89     L3:             JB   P1.4,A1
00D5 1201C8           90                     LCALL   DISPLAY
00D8 80F8             91                     JMP  L3
                      92     
                      93     
                      94     
                      95     
                      96     
                      97     
00DA 758C3C           98     T00:    MOV TH0,#(65536-50000)/256
00DD 758AB0           99                     MOV TL0,#(65536-50000) MOD 256
00E0 0545            100                     INC   TCNT
00E2 E545            101                     MOV   A,TCNT
00E4 B41444          102                     CJNE  A,#20,RETUNE1
00E7 754500          103                     MOV   TCNT,#0
                     104             
                     105             
00EA 202000          106                     JB  TIME1,J1
00ED 202102          107     J1:     JB  TIME2,J2
00F0 8004            108                     SJMP   J3
00F2 B297            109     J2:             CPL   P1.7
00F4 800D            110                     SJMP  J4
00F6 30200A          111     J3:             JNB  TIME1,J4
00F9 D297            112                     SETB  P1.7
00FB DB06            113                     DJNZ R3,J4
00FD C297            114                     CLR   P1.7
00FF C220            115                     CLR   TIME1
0101 7B0A            116                     MOV  R3,#10
0103 0536            117     J4:             INC   CLOCK_SECOND      
0105 E536            118                     MOV   A,CLOCK_SECOND
0107 B43C21          119                     CJNE  A,#60,RETUNE1
010A 0537            120                     INC   CLOCK_MINUTE
010C 753600          121                     MOV   CLOCK_SECOND,#0
010F E537            122                     MOV   A,CLOCK_MINUTE
0111 B43C17          123                     CJNE  A,#60,RETUNE1
0114 0538            124                     INC   CLOCK_HOUR
A51 MACRO ASSEMBLER  数字钟1                                                              07/08/2012 20:42:57 PAGE     3

0116 753700          125                     MOV   CLOCK_MINUTE,#0
0119 E538            126                     MOV   A,CLOCK_HOUR
011B B4180D          127                     CJNE  A,#24,RETUNE1
011E 753800          128                     MOV   CLOCK_HOUR,#0
0121 0541            129                     INC   DAY
0123 E542            130             MOV   A,MONTH
0125 B40806          131                     CJNE  A,#8,T01
0128 02012E          132                     LJMP  T01
012B 0201A6          133     RETUNE1:LJMP  RETUNE
012E 402F            134     T01:    JC    T02
0130 13              135             RRC   A
0131 4020            136                     JC    T011
0133 E541            137                     MOV   A,DAY
0135 B4206E          138                     CJNE  A,#32,RETUNE
0138 0542            139                     INC   MONTH
013A 754101          140                     MOV   DAY,#1
013D E542            141                     MOV   A,MONTH
013F B40D64          142                     CJNE  A,#13,RETUNE
0142 0543            143                     INC   YEARL
0144 754201          144                     MOV   MONTH,#1
0147 E543            145                     MOV   A,YEARL
0149 B4645A          146                     CJNE  A,#100,RETUNE
014C 0544            147                     INC   YEARH
014E 754301          148                     MOV   YEARL,#1
0151 8053            149                     SJMP  RETUNE
0153 E541            150     T011:   MOV   A,DAY
0155 B41F4E          151                     CJNE  A,#31,RETUNE
0158 0542            152                     INC   MONTH
015A 754101          153                     MOV   DAY,#1
015D 8047            154                     SJMP  RETUNE
015F 13              155     T02:    RRC   A
0160 500C            156                     JNC   T03
0162 E541            157                     MOV   A,DAY
0164 B4203F          158                     CJNE  A,#32,RETUNE
0167 0542            159                     INC   MONTH
0169 754101          160                     MOV   DAY,#1
016C 8038            161                     SJMP  RETUNE
016E E542            162     T03:    MOV   A,MONTH
0170 B40229          163             CJNE  A,#2,T04
0173 E543            164                     MOV   A,YEARL
0175 B4000D          165                 CJNE  A,#0,T031
0178 E544            166                     MOV   A,YEARH
017A 75F004          167                     MOV   B,#04
017D 84              168                     DIV   AB
017E E5F0            169                     MOV   A,B
0180 B40019          170                     CJNE  A,#0,T04
0183 800B            171                     SJMP  T032
0185 E543            172     T031:   MOV   A,YEARL
0187 75F004          173                     MOV   B,#04
018A 84              174                     DIV   AB
018B E5F0            175                     MOV   A,B
018D B4000C          176                     CJNE  A,#0,T04
0190 E541            177     T032:   MOV   A,DAY
0192 B41E11          178                     CJNE  A,#30,RETUNE
0195 0542            179                     INC   MONTH
0197 754101          180                     MOV   DAY,#1 
019A 800A            181                     SJMP  RETUNE
                     182     
                     183     
019C E541            184     T04:    MOV   A,DAY
019E B41D05          185                     CJNE  A,#29,RETUNE
01A1 0542            186                     INC   MONTH
01A3 754101          187                     MOV   DAY,#1 
01A6 1201C8          188     RETUNE: LCALL  DISPLAY
01A9 E536            189                     MOV   A,CLOCK_SECOND
01AB B40007          190                     CJNE  A,#00,EXIT1
A51 MACRO ASSEMBLER  数字钟1                                                              07/08/2012 20:42:57 PAGE     4

01AE E537            191                     MOV   A,CLOCK_MINUTE
01B0 B40002          192                     CJNE  A,#00,EXIT1
01B3 D220            193                     SETB  TIME1
01B5                 194     EXIT1:  
01B5 E537            195             MOV   A,CLOCK_MINUTE
01B7 B53409          196             CJNE  A,ALARM_MINUTE,EXIT2
01BA E538            197                     MOV   A,CLOCK_HOUR
01BC B53504          198                     CJNE  A,ALARM_HOUR,EXIT2
01BF D221            199                     SETB  TIME2
01C1 8004            200                     SJMP  EXIT3
01C3 C221            201     EXIT2:  CLR   TIME2 
01C5 C297            202             CLR   P1.7   

⌨️ 快捷键说明

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