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

📄 usbkeyboard.m51

📁 USB,hid键盘源代码哦
💻 M51
📖 第 1 页 / 共 5 页
字号:
BL51 BANKED LINKER/LOCATER V6.00                                                        06/26/2008  10:08:02  PAGE 1


BL51 BANKED LINKER/LOCATER V6.00, INVOKED BY:
C:\KEIL\C51\BIN\BL51.EXE UsbKeyBoard.obj, UART.obj, Key.obj TO UsbKeyBoard RAMSIZE (256)


MEMORY MODEL: SMALL


INPUT MODULES INCLUDED:
  UsbKeyBoard.obj (USBKEYBOARD)
  UART.obj (UART)
  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)
  C:\KEIL\C51\LIB\C51S.LIB (?C?ULDIV)


LINK MAP OF MODULE:  UsbKeyBoard (USBKEYBOARD)


            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     0029H     UNIT         ?DT?USBKEYBOARD
            DATA    0031H     0010H     UNIT         _DATA_GROUP_
            DATA    0041H     0001H     UNIT         ?DT?UART
            DATA    0042H     0001H     UNIT         ?DT?KEY
            IDATA   0043H     0080H     UNIT         ?ID?USBKEYBOARD
            IDATA   00C3H     0008H     UNIT         ?ID?KEY
            IDATA   00CBH     0001H     UNIT         ?STACK

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
            CODE    0000H     0003H     ABSOLUTE     
            CODE    0003H     0008H     UNIT         ?PR?_ACK_SETUP?USBKEYBOARD
            CODE    000BH     0003H     ABSOLUTE     
            CODE    000EH     0013H     UNIT         ?PR?_SET_ENDPOINT_STATUS?USBKEYBOARD
                    0021H     0002H                  *** GAP ***
            CODE    0023H     0003H     ABSOLUTE     
            CODE    0026H     0821H     UNIT         ?CO?USBKEYBOARD
            CODE    0847H     01C9H     UNIT         ?PR?ENDP0_IN?USBKEYBOARD
            CODE    0A10H     01ABH     UNIT         ?PR?GET_DESCRIPTOR?USBKEYBOARD
            CODE    0BBBH     014BH     UNIT         ?PR?ENDP2_IN?USBKEYBOARD
            CODE    0D06H     0136H     UNIT         ?C?LIB_CODE
            CODE    0E3CH     00F8H     UNIT         ?PR?GET_DESCRIPTOR_INTERFACE?USBKEYBOARD
            CODE    0F34H     00B8H     UNIT         ?PR?TIMER0ISR?KEY
            CODE    0FECH     00A6H     UNIT         ?PR?ENDP0_OUT?USBKEYBOARD
            CODE    1092H     0092H     UNIT         ?PR?MAIN?USBKEYBOARD
            CODE    1124H     0079H     UNIT         ?PR?_PRINTLONGINT?UART
            CODE    119DH     0065H     UNIT         ?PR?_READ_ENDPOINT_BUFF?USBKEYBOARD
            CODE    1202H     005EH     UNIT         ?PR?ENDP2_OUT?USBKEYBOARD
            CODE    1260H     0051H     UNIT         ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD
            CODE    12B1H     0039H     UNIT         ?PR?_SET_USB_ADDR?USBKEYBOARD
            CODE    12EAH     002EH     UNIT         ?PR?_GET_STATUS?USBKEYBOARD
            CODE    1318H     0029H     UNIT         ?PR?SET_IDLE?USBKEYBOARD
            CODE    1341H     0029H     UNIT         ?PR?SET_PROTOCOL?USBKEYBOARD
BL51 BANKED LINKER/LOCATER V6.00                                                      06/26/2008  10:08:02  PAGE 2


            CODE    136AH     0027H     UNIT         ?PR?SET_USB_ADDRESS?USBKEYBOARD
            CODE    1391H     0025H     UNIT         ?PR?_PRINTHEX?UART
            CODE    13B6H     0024H     UNIT         ?PR?_CLEAR_FEATURE?USBKEYBOARD
            CODE    13DAH     0024H     UNIT         ?PR?_SET_FEATURE?USBKEYBOARD
            CODE    13FEH     0023H     UNIT         ?PR?GET_CONFIGURATION?USBKEYBOARD
            CODE    1421H     0023H     UNIT         ?PR?GET_INTERFACE?USBKEYBOARD
            CODE    1444H     0021H     UNIT         ?PR?DISCONNECT_USB?USBKEYBOARD
            CODE    1465H     0020H     UNIT         ?PR?_DELAY?USBKEYBOARD
            CODE    1485H     0020H     UNIT         ?PR?GET_IDLE?USBKEYBOARD
            CODE    14A5H     0020H     UNIT         ?PR?GET_PROTOCOL?USBKEYBOARD
            CODE    14C5H     0020H     UNIT         ?PR?INITUART?UART
            CODE    14E5H     0020H     UNIT         ?PR?_PRINTS?UART
            CODE    1505H     001DH     UNIT         ?PR?SET_CONFIGURATION?USBKEYBOARD
            CODE    1522H     001DH     UNIT         ?PR?SET_INTERFACE?USBKEYBOARD
            CODE    153FH     001AH     UNIT         ?PR?CONNECT_USB?USBKEYBOARD
            CODE    1559H     001AH     UNIT         ?PR?SET_DESCRIPTOR?USBKEYBOARD
            CODE    1573H     0017H     UNIT         ?PR?_COUNT1BITS?USBKEYBOARD
            CODE    158AH     0013H     UNIT         ?PR?INIT_USB?USBKEYBOARD
            CODE    159DH     0013H     UNIT         ?PR?USB_BUS_RESET?USBKEYBOARD
            CODE    15B0H     0010H     UNIT         ?PR?READ_INTERRUPT_REGISTER?USBKEYBOARD
            CODE    15C0H     0010H     UNIT         ?CO?UART
            CODE    15D0H     000EH     UNIT         ?PR?INITTIMER0?KEY
            CODE    15DEH     000DH     UNIT         ?PR?READ_A_USB_DATA?USBKEYBOARD
            CODE    15EBH     000CH     UNIT         ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
            CODE    15F7H     000CH     UNIT         ?PR?_WRITE_A_USB_DATA?USBKEYBOARD
            CODE    1603H     000CH     UNIT         ?PR?SERIALPORT?UART
            CODE    160FH     000CH     UNIT         ?C_C51STARTUP
            CODE    161BH     000BH     UNIT         ?PR?_ERROR?USBKEYBOARD
            CODE    1626H     000BH     UNIT         ?PR?USB_BUS_SUSPEND?USBKEYBOARD
            CODE    1631H     000BH     UNIT         ?PR?GET_REPORT?USBKEYBOARD
            CODE    163CH     000BH     UNIT         ?PR?SET_REPORT?USBKEYBOARD
            CODE    1647H     000AH     UNIT         ?PR?SET_ENDPOINT_ENABLE?USBKEYBOARD
            CODE    1651H     000AH     UNIT         ?PR?_SENDTOCOMPORT?UART
            CODE    165BH     000AH     UNIT         ?PR?_PRINTC?UART
            CODE    1665H     0007H     UNIT         ?PR?_SELECT_ENDPOINT?USBKEYBOARD
            CODE    166CH     0007H     UNIT         ?PR?_READ_LAST_STATUS?USBKEYBOARD
            CODE    1673H     0007H     UNIT         ?PR?_READ_ENDPOINT_STATUS?USBKEYBOARD
            CODE    167AH     0005H     UNIT         ?PR?CLEAR_BUFFER?USBKEYBOARD
            CODE    167FH     0005H     UNIT         ?PR?VALIDATE_BUFFER?USBKEYBOARD



OVERLAY MAP OF MODULE:   UsbKeyBoard (USBKEYBOARD)


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

?PR?MAIN?USBKEYBOARD                             -----    -----
  +--> ?PR?INITUART?UART
  +--> ?PR?_PRINTC?UART
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_DELAY?USBKEYBOARD
BL51 BANKED LINKER/LOCATER V6.00                                                      06/26/2008  10:08:02  PAGE 3


  +--> ?PR?DISCONNECT_USB?USBKEYBOARD
  +--> ?PR?INIT_USB?USBKEYBOARD
  +--> ?PR?CONNECT_USB?USBKEYBOARD
  +--> ?PR?INITTIMER0?KEY
  +--> ?PR?READ_INTERRUPT_REGISTER?USBKEYBOARD
  +--> ?PR?USB_BUS_RESET?USBKEYBOARD
  +--> ?PR?USB_BUS_SUSPEND?USBKEYBOARD
  +--> ?PR?ENDP0_OUT?USBKEYBOARD
  +--> ?PR?ENDP0_IN?USBKEYBOARD
  +--> ?PR?ENDP2_OUT?USBKEYBOARD
  +--> ?PR?ENDP2_IN?USBKEYBOARD

?PR?_PRINTS?UART                                 -----    -----
  +--> ?PR?_SENDTOCOMPORT?UART

?PR?DISCONNECT_USB?USBKEYBOARD                   -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?_WRITE_A_USB_DATA?USBKEYBOARD
  +--> ?PR?_DELAY?USBKEYBOARD

?PR?INIT_USB?USBKEYBOARD                         -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_SET_USB_ADDR?USBKEYBOARD
  +--> ?PR?SET_ENDPOINT_ENABLE?USBKEYBOARD

?PR?_SET_USB_ADDR?USBKEYBOARD                    0031H    0001H
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?_WRITE_A_USB_DATA?USBKEYBOARD
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_PRINTLONGINT?UART

?PR?_PRINTLONGINT?UART                           0032H    000FH
  +--> ?PR?_SENDTOCOMPORT?UART

?PR?SET_ENDPOINT_ENABLE?USBKEYBOARD              -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?_WRITE_A_USB_DATA?USBKEYBOARD

?PR?CONNECT_USB?USBKEYBOARD                      -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?_WRITE_A_USB_DATA?USBKEYBOARD

?PR?READ_INTERRUPT_REGISTER?USBKEYBOARD          -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?READ_A_USB_DATA?USBKEYBOARD

?PR?READ_A_USB_DATA?USBKEYBOARD                  -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD

?PR?USB_BUS_RESET?USBKEYBOARD                    -----    -----
  +--> ?CO?USBKEYBOARD
BL51 BANKED LINKER/LOCATER V6.00                                                      06/26/2008  10:08:02  PAGE 4


  +--> ?PR?_PRINTS?UART
  +--> ?PR?SET_ENDPOINT_ENABLE?USBKEYBOARD

?PR?USB_BUS_SUSPEND?USBKEYBOARD                  -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART

?PR?ENDP0_OUT?USBKEYBOARD                        -----    -----
  +--> ?PR?_READ_LAST_STATUS?USBKEYBOARD
  +--> ?PR?_READ_ENDPOINT_BUFF?USBKEYBOARD
  +--> ?PR?_SET_ENDPOINT_STATUS?USBKEYBOARD
  +--> ?PR?_ACK_SETUP?USBKEYBOARD
  +--> ?PR?_SELECT_ENDPOINT?USBKEYBOARD
  +--> ?PR?CLEAR_BUFFER?USBKEYBOARD

?PR?_READ_LAST_STATUS?USBKEYBOARD                -----    -----
  +--> ?PR?READ_A_USB_DATA?USBKEYBOARD

?PR?_READ_ENDPOINT_BUFF?USBKEYBOARD              0033H    0005H
  +--> ?PR?_READ_LAST_STATUS?USBKEYBOARD
  +--> ?PR?_SELECT_ENDPOINT?USBKEYBOARD
  +--> ?PR?_ERROR?USBKEYBOARD
  +--> ?PR?_READ_ENDPOINT_STATUS?USBKEYBOARD
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?READ_A_USB_DATA?USBKEYBOARD
  +--> ?PR?CLEAR_BUFFER?USBKEYBOARD

?PR?_SELECT_ENDPOINT?USBKEYBOARD                 -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?READ_A_USB_DATA?USBKEYBOARD

?PR?_ERROR?USBKEYBOARD                           -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART

?PR?_READ_ENDPOINT_STATUS?USBKEYBOARD            -----    -----
  +--> ?PR?READ_A_USB_DATA?USBKEYBOARD

?PR?CLEAR_BUFFER?USBKEYBOARD                     -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD

?PR?_SET_ENDPOINT_STATUS?USBKEYBOARD             -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?_WRITE_A_USB_DATA?USBKEYBOARD

?PR?_ACK_SETUP?USBKEYBOARD                       -----    -----
  +--> ?PR?_SELECT_ENDPOINT?USBKEYBOARD
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD

?PR?ENDP0_IN?USBKEYBOARD                         -----    -----
  +--> ?PR?_READ_LAST_STATUS?USBKEYBOARD
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?GET_DESCRIPTOR?USBKEYBOARD
  +--> ?PR?GET_CONFIGURATION?USBKEYBOARD
  +--> ?PR?GET_DESCRIPTOR_INTERFACE?USBKEYBOARD
  +--> ?PR?GET_INTERFACE?USBKEYBOARD
BL51 BANKED LINKER/LOCATER V6.00                                                      06/26/2008  10:08:02  PAGE 5


  +--> ?PR?_GET_STATUS?USBKEYBOARD
  +--> ?PR?GET_REPORT?USBKEYBOARD
  +--> ?PR?GET_IDLE?USBKEYBOARD
  +--> ?PR?GET_PROTOCOL?USBKEYBOARD
  +--> ?PR?SET_USB_ADDRESS?USBKEYBOARD
  +--> ?PR?SET_DESCRIPTOR?USBKEYBOARD
  +--> ?PR?SET_CONFIGURATION?USBKEYBOARD
  +--> ?PR?SET_INTERFACE?USBKEYBOARD
  +--> ?PR?_CLEAR_FEATURE?USBKEYBOARD
  +--> ?PR?_SET_FEATURE?USBKEYBOARD
  +--> ?PR?SET_REPORT?USBKEYBOARD
  +--> ?PR?SET_IDLE?USBKEYBOARD
  +--> ?PR?SET_PROTOCOL?USBKEYBOARD

?PR?GET_DESCRIPTOR?USBKEYBOARD                   -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_PRINTLONGINT?UART
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD

?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD             0033H    0003H
  +--> ?PR?_READ_LAST_STATUS?USBKEYBOARD
  +--> ?PR?_SELECT_ENDPOINT?USBKEYBOARD
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD
  +--> ?PR?_WRITE_A_USB_DATA?USBKEYBOARD
  +--> ?PR?VALIDATE_BUFFER?USBKEYBOARD

?PR?VALIDATE_BUFFER?USBKEYBOARD                  -----    -----
  +--> ?PR?_WRITE_USB_COMMAND?USBKEYBOARD

?PR?GET_CONFIGURATION?USBKEYBOARD                0031H    0001H
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD

?PR?GET_DESCRIPTOR_INTERFACE?USBKEYBOARD         -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_PRINTLONGINT?UART
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD

?PR?GET_INTERFACE?USBKEYBOARD                    0031H    0001H
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD

?PR?_GET_STATUS?USBKEYBOARD                      0031H    0002H
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD

?PR?GET_REPORT?USBKEYBOARD                       -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART

?PR?GET_IDLE?USBKEYBOARD                         -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD
BL51 BANKED LINKER/LOCATER V6.00                                                      06/26/2008  10:08:02  PAGE 6



?PR?GET_PROTOCOL?USBKEYBOARD                     -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD

?PR?SET_USB_ADDRESS?USBKEYBOARD                  -----    -----
  +--> ?PR?_SELECT_ENDPOINT?USBKEYBOARD
  +--> ?PR?_WRITE_ENDPOINT_BUFF?USBKEYBOARD
  +--> ?PR?_SET_USB_ADDR?USBKEYBOARD

?PR?SET_DESCRIPTOR?USBKEYBOARD                   -----    -----
  +--> ?CO?USBKEYBOARD
  +--> ?PR?_PRINTS?UART

?PR?SET_CONFIGURATION?USBKEYBOARD                -----    -----

⌨️ 快捷键说明

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