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

📄 main.m51

📁 我改了一部分别人的USB,原来的不方便看逻辑
💻 M51
📖 第 1 页 / 共 4 页
字号:
BL51 BANKED LINKER/LOCATER V5.11                                                        09/11/2008  22:15:08  PAGE 1


BL51 BANKED LINKER/LOCATER V5.11, INVOKED BY:
C:\KEIL\C51\BIN\BL51.EXE main.obj, port.obj, d12_command.obj, usb_driver.obj, epmain.obj, epsetup.obj, uar.obj, key.obj 
>> TO main


MEMORY MODEL: SMALL


INPUT MODULES INCLUDED:
  main.obj (MAIN)
  port.obj (PORT)
  d12_command.obj (D12_COMMAND)
  usb_driver.obj (USB_DRIVER)
  epmain.obj (EPMAIN)
  epsetup.obj (EPSETUP)
  uar.obj (UAR)
  key.obj (KEY)
  C:\KEIL\C51\LIB\C51S.LIB (?C_STARTUP)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CLDPTR)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CLDOPTR)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CSTOPTR)


LINK MAP OF MODULE:  main (MAIN)


            TYPE    BASE      LENGTH    RELOCATION   SEGMENT NAME
            -----------------------------------------------------

            * * * * * * *   D A T A   M E M O R Y   * * * * * * *
            REG     0000H     0008H     ABSOLUTE     "REG BANK 0"
            DATA    0008H     0024H     UNIT         ?DT?USB_DRIVER
            DATA    002CH     0008H     UNIT         _DATA_GROUP_
            DATA    0034H     0004H     UNIT         ?DT?D12_COMMAND
            DATA    0038H     0001H     UNIT         ?DT?UAR
            DATA    0039H     0001H     UNIT         ?DT?KEY
            IDATA   003AH     0020H     UNIT         ?ID?EPMAIN
            IDATA   005AH     0007H     UNIT         ?ID?KEY
            IDATA   0061H     0001H     UNIT         ?STACK

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
            CODE    0000H     0003H     ABSOLUTE     
            CODE    0003H     0008H     UNIT         ?PR?_ACK_SETUP?D12_COMMAND
            CODE    000BH     0003H     ABSOLUTE     
            CODE    000EH     0013H     UNIT         ?PR?GET_CONFIGURATION?D12_COMMAND
            CODE    0021H     0001H     UNIT         ?PR?_ERROR?D12_COMMAND
            CODE    0022H     0001H     UNIT         ?PR?DMA_EOT?EPMAIN
            CODE    0023H     0003H     ABSOLUTE     
            CODE    0026H     0197H     UNIT         ?PR?CALL_C9?EPSETUP
            CODE    01BDH     0165H     UNIT         ?CO?D12_COMMAND
            CODE    0322H     00F5H     UNIT         ?PR?ENDP0_IN?EPSETUP
            CODE    0417H     00DDH     UNIT         ?PR?ENDP0_OUT?EPSETUP
            CODE    04F4H     00AFH     UNIT         ?CO?EPSETUP
            CODE    05A3H     009BH     UNIT         ?PR?GET_DESCRIPTOR?D12_COMMAND
            CODE    063EH     008DH     UNIT         ?PR?EP2_IN?EPMAIN
            CODE    06CBH     0088H     UNIT         ?PR?USB_INT?USB_DRIVER
            CODE    0753H     006EH     UNIT         ?PR?_READ_ENDPOINT_BUFF?D12_COMMAND
            CODE    07C1H     0068H     UNIT         ?C?LIB_CODE
BL51 BANKED LINKER/LOCATER V5.11                                                      09/11/2008  22:15:08  PAGE 2


            CODE    0829H     0060H     UNIT         ?PR?TIMER0ISR?KEY
            CODE    0889H     0056H     UNIT         ?PR?EP2_OUT?EPMAIN
            CODE    08DFH     0049H     UNIT         ?PR?_WRITE_ENDPOINT_BUFF?D12_COMMAND
            CODE    0928H     003FH     UNIT         ?PR?USB_SERVE?USB_DRIVER
            CODE    0967H     0029H     UNIT         ?PR?_GET_STATUS?D12_COMMAND
            CODE    0990H     0026H     UNIT         ?PR?_SET_ADDR_ENABLE?D12_COMMAND
            CODE    09B6H     0025H     UNIT         ?PR?MAIN?MAIN
            CODE    09DBH     0025H     UNIT         ?PR?_PRINTHEX?UAR
            CODE    0A00H     0024H     UNIT         ?CO?EPMAIN
            CODE    0A24H     0020H     UNIT         ?PR?_DEL?PORT
            CODE    0A44H     0020H     UNIT         ?PR?GET_DESCRIPTOR_INTERFACE?D12_COMMAND
            CODE    0A64H     0020H     UNIT         ?PR?INIT?UAR
            CODE    0A84H     001FH     UNIT         ?PR?INIT_USB?USB_DRIVER
            CODE    0AA3H     001EH     UNIT         ?PR?INITKEYBOARD?KEY
            CODE    0AC1H     0018H     UNIT         ?PR?SET_IDLE?D12_COMMAND
            CODE    0AD9H     0018H     UNIT         ?PR?SET_PROTOCOL?D12_COMMAND
            CODE    0AF1H     0017H     UNIT         ?PR?SET_USB_ADDRESS?D12_COMMAND
            CODE    0B08H     0016H     UNIT         ?PR?DISCONNECT_USB?D12_COMMAND
            CODE    0B1EH     0016H     UNIT         ?PR?_SET_ENDPOINT_STATUS?D12_COMMAND
            CODE    0B34H     0013H     UNIT         ?PR?GET_INTERFACE?D12_COMMAND
            CODE    0B47H     0013H     UNIT         ?PR?_PRINTS?UAR
            CODE    0B5AH     0011H     UNIT         ?PR?USB_BUS_RESET?D12_COMMAND
            CODE    0B6BH     0010H     UNIT         ?PR?READ_INTERRUPT_REGISTER?D12_COMMAND
            CODE    0B7BH     0010H     UNIT         ?PR?GET_IDLE?D12_COMMAND
            CODE    0B8BH     0010H     UNIT         ?PR?GET_PROTOCOL?D12_COMMAND
            CODE    0B9BH     0010H     UNIT         ?CO?UAR
            CODE    0BABH     000FH     UNIT         ?PR?CONNECT_USB?D12_COMMAND
            CODE    0BBAH     000EH     UNIT         ?PR?INITTIMER0?KEY
            CODE    0BC8H     000DH     UNIT         ?PR?_DISP?PORT
            CODE    0BD5H     000CH     UNIT         ?PR?_WRITE_COMMAND?PORT
            CODE    0BE1H     000CH     UNIT         ?PR?_WRITE_DATA?PORT
            CODE    0BEDH     000CH     UNIT         ?PR?_CLEAR_FEATURE?D12_COMMAND
            CODE    0BF9H     000CH     UNIT         ?PR?_SET_FEATURE?D12_COMMAND
            CODE    0C05H     000CH     UNIT         ?PR?SET_DESCRIPTOR?D12_COMMAND
            CODE    0C11H     000CH     UNIT         ?PR?SET_CONFIGURATION?D12_COMMAND
            CODE    0C1DH     000CH     UNIT         ?PR?SET_INTERFACE?D12_COMMAND
            CODE    0C29H     000CH     UNIT         ?PR?GET_REPORT?D12_COMMAND
            CODE    0C35H     000CH     UNIT         ?PR?SET_REPORT?D12_COMMAND
            CODE    0C41H     000CH     UNIT         ?PR?UARTISR?UAR
            CODE    0C4DH     000CH     UNIT         ?C_C51STARTUP
            CODE    0C59H     000BH     UNIT         ?CO?MAIN
            CODE    0C64H     000BH     UNIT         ?PR?_READ_LAST_STATUS?D12_COMMAND
            CODE    0C6FH     000BH     UNIT         ?PR?_READ_ENDPOINT_STATUS?D12_COMMAND
            CODE    0C7AH     000AH     UNIT         ?PR?SET_ENDPOINT_ENABLE?D12_COMMAND
            CODE    0C84H     000AH     UNIT         ?PR?_UARTPUTCHAR?UAR
            CODE    0C8EH     000AH     UNIT         ?PR?_PRINTC?UAR
            CODE    0C98H     0009H     UNIT         ?PR?READ_DATA?PORT
            CODE    0CA1H     0009H     UNIT         ?PR?USB_BUS_SUSPEND?D12_COMMAND
            CODE    0CAAH     0007H     UNIT         ?PR?_SELECT_ENDPOINT?D12_COMMAND
            CODE    0CB1H     0005H     UNIT         ?PR?CLEAR_BUFFER?D12_COMMAND
            CODE    0CB6H     0005H     UNIT         ?PR?VALIDATE_BUFFER?D12_COMMAND
            CODE    0CBBH     0001H     UNIT         ?PR?EP1_IN?EPMAIN
            CODE    0CBCH     0001H     UNIT         ?PR?EP1_OUT?EPMAIN



OVERLAY MAP OF MODULE:   main (MAIN)
BL51 BANKED LINKER/LOCATER V5.11                                                      09/11/2008  22:15:08  PAGE 3




SEGMENT                                            DATA_GROUP 
  +--> CALLED SEGMENT                            START    LENGTH
----------------------------------------------------------------
?C_C51STARTUP                                    -----    -----
  +--> ?PR?MAIN?MAIN

?PR?MAIN?MAIN                                    -----    -----
  +--> ?PR?INIT?UAR
  +--> ?PR?INITKEYBOARD?KEY
  +--> ?CO?MAIN
  +--> ?PR?_PRINTS?UAR
  +--> ?PR?_DISP?PORT
  +--> ?PR?INIT_USB?USB_DRIVER
  +--> ?PR?USB_INT?USB_DRIVER
  +--> ?PR?USB_SERVE?USB_DRIVER

?PR?INITKEYBOARD?KEY                             -----    -----
  +--> ?PR?INITTIMER0?KEY

?PR?_PRINTS?UAR                                  -----    -----
  +--> ?PR?_UARTPUTCHAR?UAR

?PR?_DISP?PORT                                   -----    -----
  +--> ?PR?_DEL?PORT

?PR?INIT_USB?USB_DRIVER                          -----    -----
  +--> ?PR?_DISP?PORT
  +--> ?PR?DISCONNECT_USB?D12_COMMAND
  +--> ?PR?_DEL?PORT
  +--> ?PR?_SET_ADDR_ENABLE?D12_COMMAND
  +--> ?PR?SET_ENDPOINT_ENABLE?D12_COMMAND
  +--> ?PR?CONNECT_USB?D12_COMMAND

?PR?DISCONNECT_USB?D12_COMMAND                   -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?_WRITE_DATA?PORT
  +--> ?PR?_DEL?PORT

?PR?_SET_ADDR_ENABLE?D12_COMMAND                 002CH    0001H
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?_WRITE_DATA?PORT
  +--> ?CO?D12_COMMAND
  +--> ?PR?_PRINTS?UAR
  +--> ?PR?_PRINTHEX?UAR

?PR?_PRINTHEX?UAR                                -----    -----
  +--> ?PR?_PRINTC?UAR
  +--> ?CO?UAR

?PR?SET_ENDPOINT_ENABLE?D12_COMMAND              -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?_WRITE_DATA?PORT

?PR?CONNECT_USB?D12_COMMAND                      -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
BL51 BANKED LINKER/LOCATER V5.11                                                      09/11/2008  22:15:08  PAGE 4


  +--> ?PR?_WRITE_DATA?PORT

?PR?USB_INT?USB_DRIVER                           -----    -----
  +--> ?PR?READ_INTERRUPT_REGISTER?D12_COMMAND
  +--> ?PR?DMA_EOT?EPMAIN
  +--> ?PR?ENDP0_OUT?EPSETUP
  +--> ?PR?ENDP0_IN?EPSETUP
  +--> ?PR?EP1_IN?EPMAIN
  +--> ?PR?EP1_OUT?EPMAIN
  +--> ?PR?EP2_IN?EPMAIN
  +--> ?PR?EP2_OUT?EPMAIN

?PR?READ_INTERRUPT_REGISTER?D12_COMMAND          -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?READ_DATA?PORT

?PR?ENDP0_OUT?EPSETUP                            -----    -----
  +--> ?CO?EPSETUP
  +--> ?PR?_PRINTS?UAR
  +--> ?PR?_READ_LAST_STATUS?D12_COMMAND
  +--> ?PR?_READ_ENDPOINT_BUFF?D12_COMMAND
  +--> ?PR?_SET_ENDPOINT_STATUS?D12_COMMAND
  +--> ?PR?_ACK_SETUP?D12_COMMAND
  +--> ?PR?_SELECT_ENDPOINT?D12_COMMAND
  +--> ?PR?CLEAR_BUFFER?D12_COMMAND

?PR?_READ_LAST_STATUS?D12_COMMAND                -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?READ_DATA?PORT

?PR?_READ_ENDPOINT_BUFF?D12_COMMAND              002EH    0006H
  +--> ?PR?_SELECT_ENDPOINT?D12_COMMAND
  +--> ?PR?_ERROR?D12_COMMAND
  +--> ?PR?_READ_ENDPOINT_STATUS?D12_COMMAND
  +--> ?PR?_READ_LAST_STATUS?D12_COMMAND
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?READ_DATA?PORT
  +--> ?PR?CLEAR_BUFFER?D12_COMMAND

?PR?_SELECT_ENDPOINT?D12_COMMAND                 -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?READ_DATA?PORT

?PR?_READ_ENDPOINT_STATUS?D12_COMMAND            -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?READ_DATA?PORT

?PR?CLEAR_BUFFER?D12_COMMAND                     -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT

?PR?_SET_ENDPOINT_STATUS?D12_COMMAND             002CH    0001H
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?_WRITE_DATA?PORT

?PR?_ACK_SETUP?D12_COMMAND                       -----    -----
  +--> ?PR?_SELECT_ENDPOINT?D12_COMMAND
  +--> ?PR?_WRITE_COMMAND?PORT
BL51 BANKED LINKER/LOCATER V5.11                                                      09/11/2008  22:15:08  PAGE 5



?PR?ENDP0_IN?EPSETUP                             002CH    0002H
  +--> ?PR?_READ_LAST_STATUS?D12_COMMAND
  +--> ?CO?EPSETUP
  +--> ?PR?_PRINTS?UAR
  +--> ?PR?_WRITE_ENDPOINT_BUFF?D12_COMMAND

?PR?_WRITE_ENDPOINT_BUFF?D12_COMMAND             002EH    0005H
  +--> ?PR?_READ_LAST_STATUS?D12_COMMAND
  +--> ?PR?_SELECT_ENDPOINT?D12_COMMAND
  +--> ?PR?_WRITE_COMMAND?PORT
  +--> ?PR?_WRITE_DATA?PORT
  +--> ?PR?VALIDATE_BUFFER?D12_COMMAND

?PR?VALIDATE_BUFFER?D12_COMMAND                  -----    -----
  +--> ?PR?_WRITE_COMMAND?PORT

?PR?EP2_IN?EPMAIN                                -----    -----
  +--> ?PR?_WRITE_ENDPOINT_BUFF?D12_COMMAND

?PR?EP2_OUT?EPMAIN                               002CH    0002H
  +--> ?PR?_READ_ENDPOINT_BUFF?D12_COMMAND
  +--> ?CO?EPMAIN
  +--> ?PR?_PRINTS?UAR
  +--> ?PR?_PRINTHEX?UAR

?PR?USB_SERVE?USB_DRIVER                         -----    -----
  +--> ?PR?CALL_C9?EPSETUP
  +--> ?PR?USB_BUS_RESET?D12_COMMAND
  +--> ?PR?USB_BUS_SUSPEND?D12_COMMAND

?PR?CALL_C9?EPSETUP                              -----    -----
  +--> ?CO?EPSETUP
  +--> ?PR?_PRINTS?UAR
  +--> ?PR?GET_DESCRIPTOR?D12_COMMAND
  +--> ?PR?GET_CONFIGURATION?D12_COMMAND
  +--> ?PR?GET_DESCRIPTOR_INTERFACE?D12_COMMAND
  +--> ?PR?GET_INTERFACE?D12_COMMAND
  +--> ?PR?_GET_STATUS?D12_COMMAND
  +--> ?PR?GET_REPORT?D12_COMMAND
  +--> ?PR?GET_IDLE?D12_COMMAND
  +--> ?PR?GET_PROTOCOL?D12_COMMAND
  +--> ?PR?SET_USB_ADDRESS?D12_COMMAND
  +--> ?PR?SET_DESCRIPTOR?D12_COMMAND
  +--> ?PR?SET_CONFIGURATION?D12_COMMAND
  +--> ?PR?SET_INTERFACE?D12_COMMAND
  +--> ?PR?_CLEAR_FEATURE?D12_COMMAND
  +--> ?PR?_SET_FEATURE?D12_COMMAND
  +--> ?PR?SET_REPORT?D12_COMMAND
  +--> ?PR?SET_IDLE?D12_COMMAND
  +--> ?PR?SET_PROTOCOL?D12_COMMAND

?PR?GET_DESCRIPTOR?D12_COMMAND                   -----    -----
  +--> ?CO?D12_COMMAND

?PR?GET_CONFIGURATION?D12_COMMAND                002CH    0001H

BL51 BANKED LINKER/LOCATER V5.11                                                      09/11/2008  22:15:08  PAGE 6


?PR?GET_DESCRIPTOR_INTERFACE?D12_COMMAND         -----    -----
  +--> ?CO?D12_COMMAND

?PR?GET_INTERFACE?D12_COMMAND                    002CH    0001H

?PR?_GET_STATUS?D12_COMMAND                      002CH    0002H

?PR?SET_USB_ADDRESS?D12_COMMAND                  -----    -----
  +--> ?PR?_SET_ADDR_ENABLE?D12_COMMAND

?PR?SET_IDLE?D12_COMMAND                         -----    -----
  +--> ?PR?_SELECT_ENDPOINT?D12_COMMAND

?PR?SET_PROTOCOL?D12_COMMAND                     -----    -----
  +--> ?PR?_SELECT_ENDPOINT?D12_COMMAND

?PR?USB_BUS_RESET?D12_COMMAND                    -----    -----
  +--> ?PR?SET_ENDPOINT_ENABLE?D12_COMMAND
  +--> ?CO?D12_COMMAND
  +--> ?PR?_PRINTS?UAR

?PR?USB_BUS_SUSPEND?D12_COMMAND                  -----    -----
  +--> ?CO?D12_COMMAND
  +--> ?PR?_PRINTS?UAR



SYMBOL TABLE OF MODULE:  main (MAIN)

  VALUE           TYPE          NAME
  ----------------------------------

  -------         MODULE        MAIN
  C:0000H         SYMBOL        _ICE_DUMMY_
  B:00B0H.2       PUBLIC        P3_2
  C:09B6H         PUBLIC        main
  -------         PROC          MAIN
  C:09B6H         LINE#         7
  C:09B6H         LINE#         8
  C:09B6H         LINE#         9
  C:09B9H         LINE#         10
  C:09BCH         LINE#         12
  C:09BFH         LINE#         13
  C:09C8H         LINE#         14
  C:09CDH         LINE#         15
  C:09D0H         LINE#         16
  C:09D0H         LINE#         17
  C:09D0H         LINE#         18
  C:09D3H         LINE#         19
  C:09D6H         LINE#         20
  C:09D9H         LINE#         21
  -------         ENDPROC       MAIN
  -------         ENDMOD        MAIN

  -------         MODULE        PORT
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:0080H         PUBLIC        P0
BL51 BANKED LINKER/LOCATER V5.11                                                      09/11/2008  22:15:08  PAGE 7


  D:00A0H         PUBLIC        P2
  C:0BE1H         PUBLIC        _write_data
  C:0BC8H         PUBLIC        _disp
  C:0A24H         PUBLIC        _del
  B:00B0H.5       PUBLIC        P3_5
  B:00B0H.6       PUBLIC        P3_6
  B:00B0H.7       PUBLIC        P3_7
  C:0C98H         PUBLIC        read_data
  C:0BD5H         PUBLIC        _write_command
  -------         PROC          _WRITE_COMMAND
  D:0007H         SYMBOL        a
  C:0BD5H         LINE#         2
  C:0BD5H         LINE#         3
  C:0BD7H         LINE#         4
  C:0BD9H         LINE#         5
  C:0BDBH         LINE#         6
  C:0BDDH         LINE#         7
  C:0BE0H         LINE#         8
  -------         ENDPROC       _WRITE_COMMAND
  -------         PROC          _WRITE_DATA
  D:0007H         SYMBOL        a
  C:0BE1H         LINE#         9

⌨️ 快捷键说明

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