;***********************************************************************************************
; Device Descriptor
;***********************************************************************************************
DeviceDesc DCB 0x12 ; Size of this descriptor in bytes
DCB 0x01 ; DEVICE descriptor type
DCB 0x00, 0x02 ; USB Spec Release Number in BCD format
DCB 0x00 ; Class Code
DCB 0x00 ; Subclass code
DCB 0x00 ; Protocol code
DCB MAX_PACKET0 ; Max packet size for EP0
DCB 0x83, 0x04 ; Vendor ID
DCB 0x20, 0x57 ; Product ID: Custom HID demo
DCB 0x00, 0x02 ; Device release number in BCD format
DCB 0x01 ; Manufacturer string index
DCB 0x02 ; Product string index
DCB 0x03 ; Device serial number string index
DCB 0x01 ; Number of possible configurations
;***********************************************************************************************
; Configuration Descriptor
;***********************************************************************************************
ConfigDesc
DCB 0x09 ; Size of this descriptor in bytes
DCB 0x02 ; CONFIGURATION descriptor type
DCB 0x29, 0x00 ; Total length of data for this cfg (Config+Int+HidClass+EP0+EP1)
DCB InterfaceSayisi ; Number of interfaces in this cfg
DCB KonfigurasyonNo ; Index value of this configuration
DCB 0 ; Configuration string index
DCB 0x80 :OR: (BusPowered<<6) :OR: (SuspendMode<<5)
DCB 0xFA ; Max power consumption (2X mA) 500mA
;***********************************************************************************************
; Interface Descriptor
;***********************************************************************************************
IntDesc DCB 0x09 ; Size of this descriptor in bytes
DCB 0x04 ; INTERFACE descriptor type
DCB 0 ; Interface Number
DCB 0 ; Alternate Setting Number
DCB 0x02 ; Number of endpoints in this intf
DCB 0x03 ; Class code HID
DCB 0 ; Subclass code
DCB 0 ; Protocol code
DCB 0 ; Interface string index
;***********************************************************************************************
; Endpoint Descriptor (Input icin)
;***********************************************************************************************
DCB 0x07 ; sizeof(USB_EP_DSC)
DCB 0x05 ; Endpoint Descriptor
DCB 0x81 ; EndpointAddress (Adr=1 input)
DCB 0x03 ; Attributes (Interrupt transfer)
DCB 0x40, 0x00 ; size
DCB 0x01 ; Interval
;***********************************************************************************************
; Endpoint Descriptor
;***********************************************************************************************
DCB 0x07 ; sizeof(USB_EP_DSC)
DCB 0x05 ; Endpoint Descriptor
DCB 0x01 ; EndpointAddress (Adr=1 output)
DCB 0x03 ; Attributes (Interrupt transfer)
DCB 0x40, 0x00 ; size
DCB 0x01 ; Interval
;***********************************************************************************************
; Language code string descriptor
;***********************************************************************************************
StringDesZero DCB ManufacStr - StringDesZero ; Length
DCB 0x03 ; Type=String
DCB 0x09, 0x04 ; Code English
;***********************************************************************************************
; ManufacStr
;***********************************************************************************************
ManufacStr DCB ProductStr - ManufacStr ; Length
DCB 0x03 ; Type=String
DCB 'M', 0
DCB 'i', 0
DCB 'k', 0
DCB 'r', 0
DCB 'o', 0
DCB 'S', 0
DCB 't', 0
DCB 'e', 0
DCB 'p', 0
;***********************************************************************************************
; ProductStr
;***********************************************************************************************
ProductStr DCB SerialNumStr - ProductStr ; Length
DCB 0x03 ; Type=String
DCB 'N', 0
DCB 'T', 0
DCB ' ', 0
DCB 'D', 0
DCB 'e', 0
DCB 'm', 0
DCB 'o', 0
;***********************************************************************************************
; SerialNumStr
;***********************************************************************************************
SerialNumStr DCB ReportDesc - SerialNumStr ; Length
DCB 0x03 ; Type=String
DCB 'S', 0
DCB 'N', 0
DCB ':', 0
DCB '0', 0
DCB '2', 0
DCB '0', 0
DCB '2', 0
DCB '3', 0