📄 myusb_drv.lis
字号:
0000 ;--------------------------------------------------
0001 USB_CB_SRC_h2d_cls_ifc_00: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_01: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_02: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_03: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_04: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_05: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_06: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_07: equ USB_NOT_SUPPORTED
0001 USB_CB_SRC_h2d_cls_ifc_08: equ USB_NOT_SUPPORTED
0002 USB_CB_SRC_h2d_cls_ifc_09: equ USB_UM_SUPPLIED
0002 USB_CB_SRC_h2d_cls_ifc_10: equ USB_UM_SUPPLIED
0002 USB_CB_SRC_h2d_cls_ifc_11: equ USB_UM_SUPPLIED
0001 USB_CB_SRC_h2d_cls_ifc_12: equ USB_NOT_SUPPORTED
0000
0000 ;-----------------------------------------------
0000 ; 1st Tier Dispatch--Standard Requests
0000 ;-----------------------------------------------
0001 USB_CB_h2d_std_dev: equ 1
0001 USB_CB_h2d_std_ifc: equ 1
0001 USB_CB_h2d_std_ep: equ 1
0000 USB_CB_h2d_std_oth: equ 0
0001 USB_CB_d2h_std_dev: equ 1
0001 USB_CB_d2h_std_ifc: equ 1
0001 USB_CB_d2h_std_ep: equ 1
0000 USB_CB_d2h_std_oth: equ 0
0000
0000 ;-----------------------------------------------
0000 ; 1st Tier Dispatch--Class Requests
0000 ;-----------------------------------------------
0000 USB_CB_h2d_cls_dev: equ 0
0001 USB_CB_h2d_cls_ifc: equ 1
0000 USB_CB_h2d_cls_ep: equ 0
0000 USB_CB_h2d_cls_oth: equ 0
0000 USB_CB_d2h_cls_dev: equ 0
0001 USB_CB_d2h_cls_ifc: equ 1
0000 USB_CB_d2h_cls_ep: equ 0
0000 USB_CB_d2h_cls_oth: equ 0
0000
0000 ;-----------------------------------------------
0000 ; 1st Tier Dispatch--Vendor Specific Requests
0000 ;-----------------------------------------------
0000 USB_CB_h2d_vnd_dev: equ 0
0000 USB_CB_h2d_vnd_ifc: equ 0
0000 USB_CB_h2d_vnd_ep: equ 0
0000 USB_CB_h2d_vnd_oth: equ 0
0000 USB_CB_d2h_vnd_dev: equ 0
0000 USB_CB_d2h_vnd_ifc: equ 0
0000 USB_CB_d2h_vnd_ep: equ 0
0000 USB_CB_d2h_vnd_oth: equ 0
0000
0000 ;-----------------------------------------------
0000 ; 1st Tier Dispatch--Reserved Requests
0000 ;-----------------------------------------------
0000 USB_CB_h2d_rsv_dev: equ 0
0000 USB_CB_h2d_rsv_ifc: equ 0
0000 USB_CB_h2d_rsv_ep: equ 0
0000 USB_CB_h2d_rsv_oth: equ 0
0000 USB_CB_d2h_rsv_dev: equ 0
0000 USB_CB_d2h_rsv_ifc: equ 0
0000 USB_CB_d2h_rsv_ep: equ 0
0000 USB_CB_d2h_rsv_oth: equ 0
0000
0000 ;-----------------------------------------------
0000 ; Endpoint event flags
0000 ;-----------------------------------------------
0002 NO_EVENT_ALLOWED: equ 2
0001 EVENT_PENDING: equ 1
0000 NO_EVENT_PENDING: equ 0
0000
0000 IN_BUFFER_FULL: equ NO_EVENT_PENDING
0001 IN_BUFFER_EMPTY: equ EVENT_PENDING
0001 OUT_BUFFER_FULL: equ EVENT_PENDING
0000 OUT_BUFFER_EMPTY: equ NO_EVENT_PENDING
0000
0000 ;-----------------------------------------------
0000 ; HID Descriptor Types
0000 ;-----------------------------------------------
0021 DESCR_TYPE_HID_CLASS: equ 0x21
0009 DESCR_SIZE_HID_CLASS: equ 9
0022 DESCR_TYPE_HID_REPORT: equ 0x22
0023 DESCR_TYPE_HID_PHYSICAL: equ 0x23
0000
0000 ;-----------------------------------------------
0000 ; Transfer Completion Notification
0000 ;-----------------------------------------------
0000 USB_XFER_IDLE: equ 0x00
0001 USB_XFER_STATUS_ACK: equ 0x01
0002 USB_XFER_PREMATURE: equ 0x02
0003 USB_XFER_ERROR: equ 0x03
0000
0000 ; This macro is used to allocate a completion status block
0000 ; for all Requests. The macro parameter is used
0000 ; to prefix the two data elements.
0000 USB_XFER_STATUS: equ 0
0001 USB_XFER_LENGTH: equ 1
0000 MACRO USB_XFER_STATUS_BLOCK
0000 BLK 1 ; Completion Status
0000 BLK 2 ; Transfer Length
0000 myUSB_VSR_SUPPORT: EQU 0
IF USB_CB_h2d_vnd_dev
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_h2d_vnd_ifc
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_h2d_vnd_ep
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_h2d_vnd_oth
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_d2h_vnd_dev
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_d2h_vnd_ifc
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_d2h_vnd_ep
myUSB_VSR_SUPPORT: EQU 1
ENDIF
IF USB_CB_d2h_vnd_oth
myUSB_VSR_SUPPORT: EQU 1
ENDIF
; end of file myUSB.inc
;-----------------------------------------------
; Global Symbols
;-----------------------------------------------
export _myUSB_EP0_ISR
export myUSB_InitControlRead
export myUSB_InitControlWrite
export myUSB_InitNoDataStageControlTransfer
export myUSB_NoDataStageControlTransfer
;-----------------------------------------------
; Macro Definitions
;-----------------------------------------------
;-----------------------------------------------
; Constant Definitions
;-----------------------------------------------
;-----------------------------------------------
; Variable Allocation
;-----------------------------------------------
AREA bss (RAM,REL)
;----------------------------------------------------------------------------
; Current Device
;----------------------------------------------------------------------------
EXPORT myUSB_bCurrentDevice
0000 myUSB_bCurrentDevice: BLK 1 ; Current Device
0001 ;----------------------------------------------------------------------------
0001 ; Current Configuration
0001 ;----------------------------------------------------------------------------
EXPORT myUSB_Configuration, _myUSB_Configuration
0001 _myUSB_Configuration:
0001 myUSB_Configuration: BLK 1 ; Current Configuration
0002 ;----------------------------------------------------------------------------
0002 ; Current Device Status
0002 ;----------------------------------------------------------------------------
EXPORT myUSB_DeviceStatus
0002 myUSB_DeviceStatus: BLK 1 ; Current Device Status
0003 ;----------------------------------------------------------------------------
0003 ; Interface Setting
0003 ;----------------------------------------------------------------------------
EXPORT myUSB_InterfaceSetting
0003 myUSB_InterfaceSetting: BLK 2 ; Interface Setting
0005 ;----------------------------------------------------------------------------
0005 ; Endpoint Status--USB Status
0005 ;----------------------------------------------------------------------------
EXPORT myUSB_EndpointStatus
0005 myUSB_EndpointStatus: BLK USB_NUM_ENDPOINTS ; Endpoint Status
0008 ;----------------------------------------------------------------------------
0008 ; Last Packet Size
0008 ;----------------------------------------------------------------------------
EXPORT myUSB_LastSize
0008 myUSB_LastSize: BLK 1 ; Last Packet Size
0009 ;----------------------------------------------------------------------------
0009 ; Control Transfer State Machine
0009 ; State values for Control Write
0009 ; State values for Control Read
0009 ;----------------------------------------------------------------------------
EXPORT myUSB_TransferType
0009 myUSB_TransferType: BLK 1 ; Control Transfer State Machine
000A ;----------------------------------------------------------------------------
000A ; Control Transfer Intermediate Buffer--Shared among the requests
000A ;----------------------------------------------------------------------------
EXPORT myUSB_TransferBuffer
000A myUSB_TransferBuffer: BLK 8
0012 ;----------------------------------------------------------------------------
0012 ; Transfer Descriptor Data for Control Transfer
0012 ; --The following data have the same format as the first 5 bytes of the TD_ENTRY
0012 ;----------------------------------------------------------------------------
0012 ; Control Transfer Data Source
0012 ; USB_DS_ROM
0012 ; USB_DS_RAM
0012 ; USB_DS_RAM_AS_NEEDED
0012 ;----------------------------------------------------------------------------
EXPORT myUSB_CurrentTD, _myUSB_CurrentTD
0012 myUSB_CurrentTD:
0012 _myUSB_CurrentTD:
EXPORT myUSB_DataSource, _myUSB_DataSource
0012 myUSB_DataSource:
0012 _myUSB_DataSource: BLK 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -