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

📄 12.lst

📁 08浙江省大学生电子设计竞赛 C题,智能公交系统 获二等奖
💻 LST
📖 第 1 页 / 共 5 页
字号:
 614   1      
 615   1      }
C51 COMPILER V8.02   12                                                                    10/10/2008 16:05:55 PAGE 12  

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION L?0153 (BEGIN)
0000         L?0154:
0000 7F64              MOV     R7,#064H
0002 7E00              MOV     R6,#00H
0004         L?0155:
0004 7D00              MOV     R5,#00H
0006 7C00              MOV     R4,#00H
             ; FUNCTION _delay (BEGIN)
                                           ; SOURCE LINE # 57
                                           ; SOURCE LINE # 58
0008 8030              SJMP    ?C0150
000A         ?C0001:
                                           ; SOURCE LINE # 59
000A 7800        R     MOV     R0,#LOW t
000C E2                MOVX    A,@R0
000D FC                MOV     R4,A
000E 08                INC     R0
000F E2                MOVX    A,@R0
0010 FD                MOV     R5,A
0011 08                INC     R0
0012 E2                MOVX    A,@R0
0013 FE                MOV     R6,A
0014 08                INC     R0
0015 E2                MOVX    A,@R0
0016 FF                MOV     R7,A
0017 EC                MOV     A,R4
0018 4D                ORL     A,R5
0019 4E                ORL     A,R6
001A 4F                ORL     A,R7
001B 6024              JZ      ?C0003
                                           ; SOURCE LINE # 60
001D 7800        R     MOV     R0,#LOW t
001F E2                MOVX    A,@R0
0020 FC                MOV     R4,A
0021 08                INC     R0
0022 E2                MOVX    A,@R0
0023 FD                MOV     R5,A
0024 08                INC     R0
0025 E2                MOVX    A,@R0
0026 FE                MOV     R6,A
0027 08                INC     R0
0028 E2                MOVX    A,@R0
0029 FF                MOV     R7,A
002A EF                MOV     A,R7
002B 24FF              ADD     A,#0FFH
002D FF                MOV     R7,A
002E EE                MOV     A,R6
002F 34FF              ADDC    A,#0FFH
0031 FE                MOV     R6,A
0032 ED                MOV     A,R5
0033 34FF              ADDC    A,#0FFH
0035 FD                MOV     R5,A
0036 EC                MOV     A,R4
0037 34FF              ADDC    A,#0FFH
0039 FC                MOV     R4,A
003A         ?C0150:
003A 7800        R     MOV     R0,#LOW t
003C 120000      E     LCALL   ?C?LSTPDATA
003F 80C9              SJMP    ?C0001
C51 COMPILER V8.02   12                                                                    10/10/2008 16:05:55 PAGE 13  

                                           ; SOURCE LINE # 61
0041         ?C0003:
0041 22                RET     
             ; FUNCTION _delay (END)

             ; FUNCTION WaitTillNotBusy (BEGIN)
                                           ; SOURCE LINE # 76
                                           ; SOURCE LINE # 77
                                           ; SOURCE LINE # 78
;---- Variable 'delay' assigned to Register 'R6/R7' ----
0000 74FF              MOV     A,#0FFH
0002 FF                MOV     R7,A
0003 FE                MOV     R6,A
                                           ; SOURCE LINE # 80
0004 F580              MOV     P0,A
                                           ; SOURCE LINE # 82
0006 D2A0              SETB    lcd_cs
                                           ; SOURCE LINE # 83
0008 C2A2              CLR     lcd_rs
                                           ; SOURCE LINE # 84
000A D2A1              SETB    lcd_rw
000C         ?C0004:
                                           ; SOURCE LINE # 85
000C E580              MOV     A,P0
000E 30E70B            JNB     ACC.7,?C0005
0011 EF                MOV     A,R7
0012 4E                ORL     A,R6
0013 6007              JZ      ?C0005
                                           ; SOURCE LINE # 86
0015 EF                MOV     A,R7
0016 1F                DEC     R7
0017 70F3              JNZ     ?C0004
0019 1E                DEC     R6
001A         ?C0137:
001A 80F0              SJMP    ?C0004
001C         ?C0005:
                                           ; SOURCE LINE # 87
001C C2A0              CLR     lcd_cs
                                           ; SOURCE LINE # 88
001E EF                MOV     A,R7
001F 4E                ORL     A,R6
0020 7002              JNZ     ?C0006
                                           ; SOURCE LINE # 89
0022 C3                CLR     C
0023 22                RET     
0024         ?C0006:
                                           ; SOURCE LINE # 91
0024 D3                SETB    C
                                           ; SOURCE LINE # 92
0025         ?C0007:
0025 22                RET     
             ; FUNCTION WaitTillNotBusy (END)

             ; FUNCTION _LocateXY (BEGIN)
                                           ; SOURCE LINE # 94
;---- Variable 'posx' assigned to Register 'R7' ----
;---- Variable 'posy' assigned to Register 'R5' ----
                                           ; SOURCE LINE # 95
                                           ; SOURCE LINE # 96
0000 ED                MOV     A,R5
0001 5401              ANL     A,#01H
0003 FD                MOV     R5,A
C51 COMPILER V8.02   12                                                                    10/10/2008 16:05:55 PAGE 14  

                                           ; SOURCE LINE # 97
0004 B40104            CJNE    A,#01H,?C0008
                                           ; SOURCE LINE # 98
0007 EF                MOV     A,R7
0008 4440              ORL     A,#040H
000A FF                MOV     R7,A
000B         ?C0008:
                                           ; SOURCE LINE # 99
000B EF                MOV     A,R7
000C 4480              ORL     A,#080H
000E FF                MOV     R7,A
                                           ; SOURCE LINE # 101
000F 120000      R     LCALL   _LcdWCMD
                                           ; SOURCE LINE # 102
0012         ?C0009:
0012 22                RET     
             ; FUNCTION _LocateXY (END)

             ; FUNCTION _LcdWCMD (BEGIN)
                                           ; SOURCE LINE # 105
;---- Variable 'CMD' assigned to Register 'R5' ----
0000 AD07              MOV     R5,AR7
                                           ; SOURCE LINE # 106
                                           ; SOURCE LINE # 107
;---- Variable 'i' assigned to Register 'R4' ----
0002 7C01              MOV     R4,#01H
                                           ; SOURCE LINE # 109
0004 120000      R     LCALL   WaitTillNotBusy
0007 4001              JC      ?C0010
                                           ; SOURCE LINE # 110
0009 22                RET     
000A         ?C0010:
                                           ; SOURCE LINE # 112
000A AF05              MOV     R7,AR5
000C 8F80              MOV     P0,R7
                                           ; SOURCE LINE # 113
000E C2A2              CLR     lcd_rs
                                           ; SOURCE LINE # 114
0010 C2A1              CLR     lcd_rw
                                           ; SOURCE LINE # 115
0012 D2A0              SETB    lcd_cs
0014         ?C0012:
                                           ; SOURCE LINE # 116
0014 AF04              MOV     R7,AR4
0016 0C                INC     R4
0017 EF                MOV     A,R7
0018 70FA              JNZ     ?C0012
001A         ?C0013:
                                           ; SOURCE LINE # 117
001A C2A0              CLR     lcd_cs
                                           ; SOURCE LINE # 119
001C D3                SETB    C
                                           ; SOURCE LINE # 120
001D         ?C0011:
001D 22                RET     
             ; FUNCTION _LcdWCMD (END)

             ; FUNCTION _LcdWData (BEGIN)
                                           ; SOURCE LINE # 123
;---- Variable 'dataW' assigned to Register 'R5' ----
0000 AD07              MOV     R5,AR7
                                           ; SOURCE LINE # 124
C51 COMPILER V8.02   12                                                                    10/10/2008 16:05:55 PAGE 15  

                                           ; SOURCE LINE # 126
;---- Variable 'i' assigned to Register 'R4' ----
0002 7C01              MOV     R4,#01H
                                           ; SOURCE LINE # 128
0004 120000      R     LCALL   WaitTillNotBusy
0007 4001              JC      ?C0014
                                           ; SOURCE LINE # 129
0009 22                RET     
000A         ?C0014:
                                           ; SOURCE LINE # 132
000A AF05              MOV     R7,AR5
000C 8F80              MOV     P0,R7
                                           ; SOURCE LINE # 133
000E D2A2              SETB    lcd_rs
                                           ; SOURCE LINE # 134
0010 C2A1              CLR     lcd_rw
                                           ; SOURCE LINE # 135
0012 D2A0              SETB    lcd_cs
0014         ?C0016:
                                           ; SOURCE LINE # 136
0014 AF04              MOV     R7,AR4
0016 0C                INC     R4
0017 EF                MOV     A,R7
0018 70FA              JNZ     ?C0016
001A         ?C0017:
                                           ; SOURCE LINE # 137
001A C2A0              CLR     lcd_cs
                                           ; SOURCE LINE # 139
001C D3                SETB    C
                                           ; SOURCE LINE # 140
001D         ?C0015:
001D 22                RET     
             ; FUNCTION _LcdWData (END)

             ; FUNCTION LCDInit (BEGIN)
                                           ; SOURCE LINE # 147
                                           ; SOURCE LINE # 148
                                           ; SOURCE LINE # 151
0000 7F38              MOV     R7,#038H
0002 120000      R     LCALL   _LcdWCMD
0005 5017              JNC     ?C0018
0007 7F06              MOV     R7,#06H
0009 120000      R     LCALL   _LcdWCMD
000C 5010              JNC     ?C0018
000E 7F0C              MOV     R7,#0CH
0010 120000      R     LCALL   _LcdWCMD
0013 5009              JNC     ?C0018
0015 7F01              MOV     R7,#01H
0017 120000      R     LCALL   _LcdWCMD
001A 5002              JNC     ?C0018
001C 8001              SJMP    ?C0019
001E         ?C0018:
001E C3                CLR     C
001F         ?C0019:
                                           ; SOURCE LINE # 153
001F         ?C0020:
001F 22                RET     
             ; FUNCTION LCDInit (END)

             ; FUNCTION _DisplayOneChar (BEGIN)
                                           ; SOURCE LINE # 155
0000 7800        R     MOV     R0,#LOW Wdata
C51 COMPILER V8.02   12                                                                    10/10/2008 16:05:55 PAGE 16  

0002 EB                MOV     A,R3
0003 F2                MOVX    @R0,A
;---- Variable 'y' assigned to Register 'R5' ----
;---- Variable 'x' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 156
                                           ; SOURCE LINE # 158
0004 EF                MOV     A,R7
0005 C3                CLR     C
0006 9400              SUBB    A,#00H
0008 4021              JC      ?C0021
000A EF                MOV     A,R7
000B 9410              SUBB    A,#010H
000D 501C              JNC     ?C0021
000F ED                MOV     A,R5
0010 C3                CLR     C
0011 9400              SUBB    A,#00H
0013 4016              JC      ?C0021
0015 ED                MOV     A,R5
0016 9402              SUBB    A,#02H
0018 5011              JNC     ?C0021
                                           ; SOURCE LINE # 159
001A 120000      R     LCALL   _LocateXY
001D 500A              JNC     ?C0022
001F 7800        R     MOV     R0,#LOW Wdata
0021 E2                MOVX    A,@R0
0022 FF                MOV     R7,A
0023 120000      R     LCALL   _LcdWData
0026 5001              JNC     ?C0022
0028 22                RET     
0029         ?C0022:
0029 C3                CLR     C
002A         ?C0023:
002A 22                RET     
002B         ?C0021:
                                           ; SOURCE LINE # 161
002B 120000      R     LCALL   LCDInit
002E 5018              JNC     ?C0026
0030 900000      R     MOV     DPTR,#WrtieLcdErr
0033 E4                CLR     A
0034 93                MOVC    A,@A+DPTR
0035 FB                MOV     R3,A
0036 7401              MOV     A,#01H
0038 93                MOVC    A,@A+DPTR
0039 FA                MOV     R2,A
003A 7402              MOV     A,#02H
003C 93                MOVC    A,@A+DPTR
003D F9                MOV     R1,A
003E E4                CLR     A
003F FD                MOV     R5,A
0040 FF                MOV     R7,A
0041 120000      R     LCALL   _DisplayString
0044 5002              JNC     ?C0026
0046 8001              SJMP    ?C0027
0048         ?C0026:
0048 C3                CLR     C
0049         ?C0027:
                                           ; SOURCE LINE # 162
0049         ?C0024:
0049 22                RET     
             ; FUNCTION _DisplayOneChar (END)

             ; FUNCTION L?0156 (BEGIN)

⌨️ 快捷键说明

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