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

📄 main.lst

📁 51读写硬盘的程序模块,编译完全通过,移植方面,实用.
💻 LST
📖 第 1 页 / 共 4 页
字号:
0013 900008            MOV     DPTR,#08H
0016 7406              MOV     A,#06H
0018 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 115
0019 120000      R     LCALL   wait
                                           ; SOURCE LINE # 116
C51 COMPILER V8.01   MAIN                                                                  08/07/2006 11:08:35 PAGE 11  

001C 900008            MOV     DPTR,#08H
001F 740C              MOV     A,#0CH
0021 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 117
0022 020000      R     LJMP    wait
             ; FUNCTION IniLcd (END)

             ; FUNCTION _LcdDis (BEGIN)
                                           ; SOURCE LINE # 123
0000 8B00        R     MOV     Lcd1,R3
0002 8A00        R     MOV     Lcd1+01H,R2
0004 8900        R     MOV     Lcd1+02H,R1
;---- Variable 'FL' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 124
                                           ; SOURCE LINE # 127
0006 EF                MOV     A,R7
0007 4480              ORL     A,#080H
                                           ; SOURCE LINE # 128
0009 120000      R     LCALL   L?0075
                                           ; SOURCE LINE # 129
;---- Variable 'k' assigned to Register 'R7' ----
000C E4                CLR     A
000D FF                MOV     R7,A
000E         ?C0019:
                                           ; SOURCE LINE # 130
000E AB00        R     MOV     R3,Lcd1
0010 AA00        R     MOV     R2,Lcd1+01H
0012 A900        R     MOV     R1,Lcd1+02H
0014 8F82              MOV     DPL,R7
0016 758300            MOV     DPH,#00H
0019 120000      E     LCALL   ?C?CLDOPTR
001C 900009            MOV     DPTR,#09H
001F F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 131
0020 120000      R     LCALL   wait
                                           ; SOURCE LINE # 132
0023 0F                INC     R7
0024 BF10E7            CJNE    R7,#010H,?C0019
0027         ?C0020:
                                           ; SOURCE LINE # 133
0027 E500        R     MOV     A,SL
0029 44C0              ORL     A,#0C0H
                                           ; SOURCE LINE # 134
002B 120000      R     LCALL   L?0075
                                           ; SOURCE LINE # 135
002E E4                CLR     A
002F FF                MOV     R7,A
0030         ?C0022:
                                           ; SOURCE LINE # 136
0030 AB00        R     MOV     R3,Lcd2
0032 AA00        R     MOV     R2,Lcd2+01H
0034 A900        R     MOV     R1,Lcd2+02H
0036 8F82              MOV     DPL,R7
0038 758300            MOV     DPH,#00H
003B 120000      E     LCALL   ?C?CLDOPTR
003E 900009            MOV     DPTR,#09H
0041 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 137
0042 120000      R     LCALL   wait
                                           ; SOURCE LINE # 138
0045 0F                INC     R7
0046 BF10E7            CJNE    R7,#010H,?C0022
C51 COMPILER V8.01   MAIN                                                                  08/07/2006 11:08:35 PAGE 12  

                                           ; SOURCE LINE # 139
0049         ?C0025:
0049 22                RET     
             ; FUNCTION _LcdDis (END)

             ; FUNCTION _ReadReg (BEGIN)
                                           ; SOURCE LINE # 145
;---- Variable 'ADD' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 146
                                           ; SOURCE LINE # 147
0000 900007            MOV     DPTR,#07H
0003 7492              MOV     A,#092H
0005 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 148
0006 900006            MOV     DPTR,#06H
0009 EF                MOV     A,R7
000A F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 149
000B C2B0              CLR     READ
                                           ; SOURCE LINE # 150
000D 900004            MOV     DPTR,#04H
0010 E0                MOVX    A,@DPTR
                                           ; SOURCE LINE # 151
0011 F500        R     MOV     STATUS,A
                                           ; SOURCE LINE # 152
0013 D2B0              SETB    READ
                                           ; SOURCE LINE # 153
0015 22                RET     
             ; FUNCTION _ReadReg (END)

             ; FUNCTION _WriteReg (BEGIN)
                                           ; SOURCE LINE # 159
;---- Variable 'DATA' assigned to Register 'R5' ----
;---- Variable 'ADD' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 160
                                           ; SOURCE LINE # 161
0000 900007            MOV     DPTR,#07H
0003 7480              MOV     A,#080H
0005 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 162
0006 900006            MOV     DPTR,#06H
0009 EF                MOV     A,R7
000A F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 163
000B C2B1              CLR     WRITE
                                           ; SOURCE LINE # 164
000D 900004            MOV     DPTR,#04H
0010 ED                MOV     A,R5
0011 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 165
0012 D2B1              SETB    WRITE
                                           ; SOURCE LINE # 166
0014 22                RET     
             ; FUNCTION _WriteReg (END)

             ; FUNCTION ReadData (BEGIN)
                                           ; SOURCE LINE # 172
                                           ; SOURCE LINE # 173
                                           ; SOURCE LINE # 174
0000 900007            MOV     DPTR,#07H
0003 7492              MOV     A,#092H
0005 F0                MOVX    @DPTR,A
C51 COMPILER V8.01   MAIN                                                                  08/07/2006 11:08:35 PAGE 13  

                                           ; SOURCE LINE # 175
0006 900006            MOV     DPTR,#06H
0009 E4                CLR     A
000A F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 176
000B C2B0              CLR     READ
                                           ; SOURCE LINE # 177
000D 900004            MOV     DPTR,#04H
0010 E0                MOVX    A,@DPTR
0011 F500        R     MOV     buffer0,A
                                           ; SOURCE LINE # 178
0013 A3                INC     DPTR
0014 E0                MOVX    A,@DPTR
0015 F500        R     MOV     buffer1,A
                                           ; SOURCE LINE # 179
0017 D2B0              SETB    READ
                                           ; SOURCE LINE # 180
0019 22                RET     
             ; FUNCTION ReadData (END)

             ; FUNCTION _WriteData (BEGIN)
                                           ; SOURCE LINE # 186
;---- Variable 'Data1' assigned to Register 'R5' ----
;---- Variable 'Data0' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 187
                                           ; SOURCE LINE # 188
0000 900007            MOV     DPTR,#07H
0003 7480              MOV     A,#080H
0005 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 189
0006 900006            MOV     DPTR,#06H
0009 E4                CLR     A
000A F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 190
000B C2B1              CLR     WRITE
                                           ; SOURCE LINE # 191
000D 900004            MOV     DPTR,#04H
0010 EF                MOV     A,R7
0011 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 192
0012 A3                INC     DPTR
0013 ED                MOV     A,R5
0014 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 193
0015 D2B1              SETB    WRITE
                                           ; SOURCE LINE # 194
0017 22                RET     
             ; FUNCTION _WriteData (END)

             ; FUNCTION _WriteCHS (BEGIN)
                                           ; SOURCE LINE # 200
0000 8C00        R     MOV     cylinder,R4
0002 8D00        R     MOV     cylinder+01H,R5
;---- Variable 'head' assigned to Register 'R6' ----
0004 AE07              MOV     R6,AR7
;---- Variable 'sector' assigned to Register 'R3' ----
                                           ; SOURCE LINE # 201
0006         ?C0032:
                                           ; SOURCE LINE # 202
0006 7F07              MOV     R7,#07H
0008 120000      R     LCALL   _ReadReg
000B 20E7F8            JB      BSY,?C0032
C51 COMPILER V8.01   MAIN                                                                  08/07/2006 11:08:35 PAGE 14  

                                           ; SOURCE LINE # 203
000E EE                MOV     A,R6
000F 54E0              ANL     A,#0E0H
0011 FD                MOV     R5,A
0012 1F                DEC     R7
0013 120000      R     LCALL   _WriteReg
                                           ; SOURCE LINE # 204
0016 E500        R     MOV     A,cylinder
0018 FD                MOV     R5,A
0019 1F                DEC     R7
001A 120000      R     LCALL   _WriteReg
                                           ; SOURCE LINE # 205
001D E500        R     MOV     A,cylinder+01H
001F FD                MOV     R5,A
0020 1F                DEC     R7
0021 120000      R     LCALL   _WriteReg
                                           ; SOURCE LINE # 206
0024 AD03              MOV     R5,AR3
0026 1F                DEC     R7
0027 120000      R     LCALL   _WriteReg
                                           ; SOURCE LINE # 207
002A 7D01              MOV     R5,#01H
002C 1F                DEC     R7
002D 020000      R     LJMP    _WriteReg
             ; FUNCTION _WriteCHS (END)

             ; FUNCTION _WriteCommand (BEGIN)
                                           ; SOURCE LINE # 213
;---- Variable 'command' assigned to Register 'R4/R5' ----
0000 AD07              MOV     R5,AR7
0002 AC06              MOV     R4,AR6
                                           ; SOURCE LINE # 214
0004         ?C0036:
                                           ; SOURCE LINE # 215
0004 7F07              MOV     R7,#07H
0006 120000      R     LCALL   _ReadReg
0009 20E7F8            JB      BSY,?C0036
                                           ; SOURCE LINE # 216
000C 020000      R     LJMP    _WriteReg
             ; FUNCTION _WriteCommand (END)

             ; FUNCTION GetData (BEGIN)
                                           ; SOURCE LINE # 222
                                           ; SOURCE LINE # 223
                                           ; SOURCE LINE # 224
;---- Variable 'i' assigned to Register 'R4/R5' ----
0000 7D00              MOV     R5,#00H
0002 7C02              MOV     R4,#02H
0004         ?C0040:
                                           ; SOURCE LINE # 225
0004 7F07              MOV     R7,#07H
0006 120000      R     LCALL   _ReadReg
0009 A2E7              MOV     C,BSY
000B A0E3              ORL     C,/DRQ
000D 40F5              JC      ?C0040
                                           ; SOURCE LINE # 226
000F 30E01B            JNB     ERR,?C0042
                                           ; SOURCE LINE # 227
0012 E4                CLR     A
0013 F500        R     MOV     ?_LcdDis?BYTE+04H,A
0015 7500FF      R     MOV     ?_LcdDis?BYTE+05H,#0FFH
0018 750000      R     MOV     ?_LcdDis?BYTE+06H,#HIGH LCD2
C51 COMPILER V8.01   MAIN                                                                  08/07/2006 11:08:35 PAGE 15  

001B 750000      R     MOV     ?_LcdDis?BYTE+07H,#LOW LCD2
001E 7BFF              MOV     R3,#0FFH
0020 7A00        R     MOV     R2,#HIGH ERROR
0022 7900        R     MOV     R1,#LOW ERROR
0024 FF                MOV     R7,A
0025 120000      R     LCALL   _LcdDis
                                           ; SOURCE LINE # 228
0028 7FFF              MOV     R7,#0FFH
002A 120000      R     LCALL   _putch
                                           ; SOURCE LINE # 229
002D         ?C0042:
                                           ; SOURCE LINE # 230
002D ED                MOV     A,R5
002E 4C                ORL     A,R4
002F 600D              JZ      ?C0044
0031 120000      R     LCALL   L?0076
0034 74FE              MOV     A,#0FEH
0036 2D                ADD     A,R5
0037 FD                MOV     R5,A
0038 74FF              MOV     A,#0FFH
003A 3C                ADDC    A,R4
003B FC                MOV     R4,A
003C 80EF              SJMP    ?C0042
                                           ; SOURCE LINE # 231
003E         ?C0044:

⌨️ 快捷键说明

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