RT-AICHIP-sample
usb.h ファイル
被依存関係図:

[ソースコード]

データ構造

union  __attribute__
 
union  _REQUEST_TYPE
 
struct  _REQUEST_TYPE::_BM
 
struct  _BM
 
struct  _USB_SETUP_PACKET
 
struct  _USB_DEVICE_DESCRIPTOR
 
struct  _USB_DEVICE_QUALIFIER_DESCRIPTOR
 
struct  _USB_CONFIGURATION_DESCRIPTOR
 
struct  _USB_INTERFACE_DESCRIPTOR
 
struct  _USB_ENDPOINT_DESCRIPTOR
 
struct  _USB_STRING_DESCRIPTOR
 
struct  _USB_COMMON_DESCRIPTOR
 

マクロ定義

#define REQUEST_HOST_TO_DEVICE   0
 
#define REQUEST_DEVICE_TO_HOST   1
 
#define REQUEST_STANDARD   0
 
#define REQUEST_CLASS   1
 
#define REQUEST_VENDOR   2
 
#define REQUEST_RESERVED   3
 
#define REQUEST_TO_DEVICE   0
 
#define REQUEST_TO_INTERFACE   1
 
#define REQUEST_TO_ENDPOINT   2
 
#define REQUEST_TO_OTHER   3
 
#define USB_REQUEST_GET_STATUS   0
 
#define USB_REQUEST_CLEAR_FEATURE   1
 
#define USB_REQUEST_SET_FEATURE   3
 
#define USB_REQUEST_SET_ADDRESS   5
 
#define USB_REQUEST_GET_DESCRIPTOR   6
 
#define USB_REQUEST_SET_DESCRIPTOR   7
 
#define USB_REQUEST_GET_CONFIGURATION   8
 
#define USB_REQUEST_SET_CONFIGURATION   9
 
#define USB_REQUEST_GET_INTERFACE   10
 
#define USB_REQUEST_SET_INTERFACE   11
 
#define USB_REQUEST_SYNC_FRAME   12
 
#define USB_GETSTATUS_SELF_POWERED   0x01
 
#define USB_GETSTATUS_REMOTE_WAKEUP   0x02
 
#define USB_GETSTATUS_ENDPOINT_STALL   0x01
 
#define USB_FEATURE_ENDPOINT_STALL   0
 
#define USB_FEATURE_REMOTE_WAKEUP   1
 
#define USB_DEVICE_DESCRIPTOR_TYPE   1
 
#define USB_CONFIGURATION_DESCRIPTOR_TYPE   2
 
#define USB_STRING_DESCRIPTOR_TYPE   3
 
#define USB_INTERFACE_DESCRIPTOR_TYPE   4
 
#define USB_ENDPOINT_DESCRIPTOR_TYPE   5
 
#define USB_DEVICE_QUALIFIER_DESCRIPTOR_TYPE   6
 
#define USB_OTHER_SPEED_CONFIG_DESCRIPTOR_TYPE   7
 
#define USB_INTERFACE_POWER_DESCRIPTOR_TYPE   8
 
#define USB_OTG_DESCRIPTOR_TYPE   9
 
#define USB_DEBUG_DESCRIPTOR_TYPE   10
 
#define USB_INTERFACE_ASSOCIATION_DESCRIPTOR_TYPE   11
 
#define USB_DEVICE_CLASS_RESERVED   0x00
 
#define USB_DEVICE_CLASS_AUDIO   0x01
 
#define USB_DEVICE_CLASS_COMMUNICATIONS   0x02
 
#define USB_DEVICE_CLASS_HUMAN_INTERFACE   0x03
 
#define USB_DEVICE_CLASS_MONITOR   0x04
 
#define USB_DEVICE_CLASS_PHYSICAL_INTERFACE   0x05
 
#define USB_DEVICE_CLASS_POWER   0x06
 
#define USB_DEVICE_CLASS_PRINTER   0x07
 
#define USB_DEVICE_CLASS_STORAGE   0x08
 
#define USB_DEVICE_CLASS_HUB   0x09
 
#define USB_DEVICE_CLASS_MISCELLANEOUS   0xEF
 
#define USB_DEVICE_CLASS_VENDOR_SPECIFIC   0xFF
 
#define USB_CONFIG_POWERED_MASK   0x40
 
#define USB_CONFIG_BUS_POWERED   0x80
 
#define USB_CONFIG_SELF_POWERED   0xC0
 
#define USB_CONFIG_REMOTE_WAKEUP   0x20
 
#define USB_CONFIG_POWER_MA(mA)    ((mA)/2)
 
#define USB_ENDPOINT_DIRECTION_MASK   0x80
 
#define USB_ENDPOINT_OUT(addr)    ((addr) | 0x00)
 
#define USB_ENDPOINT_IN(addr)    ((addr) | 0x80)
 
#define USB_ENDPOINT_TYPE_MASK   0x03
 
#define USB_ENDPOINT_TYPE_CONTROL   0x00
 
#define USB_ENDPOINT_TYPE_ISOCHRONOUS   0x01
 
#define USB_ENDPOINT_TYPE_BULK   0x02
 
#define USB_ENDPOINT_TYPE_INTERRUPT   0x03
 
#define USB_ENDPOINT_SYNC_MASK   0x0C
 
#define USB_ENDPOINT_SYNC_NO_SYNCHRONIZATION   0x00
 
#define USB_ENDPOINT_SYNC_ASYNCHRONOUS   0x04
 
#define USB_ENDPOINT_SYNC_ADAPTIVE   0x08
 
#define USB_ENDPOINT_SYNC_SYNCHRONOUS   0x0C
 
#define USB_ENDPOINT_USAGE_MASK   0x30
 
#define USB_ENDPOINT_USAGE_DATA   0x00
 
#define USB_ENDPOINT_USAGE_FEEDBACK   0x10
 
#define USB_ENDPOINT_USAGE_IMPLICIT_FEEDBACK   0x20
 
#define USB_ENDPOINT_USAGE_RESERVED   0x30
 

関数

union _REQUEST_TYPE __attribute__ ((packed)) REQUEST_TYPE
 

変数

typedef  __attribute__
 
uint8_t L
 
uint8_t H
 
uint8_t Recipient
 
uint8_t Type
 
uint8_t Dir
 
uint8_t B
 
REQUEST_TYPE bmRequestType
 
uint8_t bRequest
 
WORD_BYTE wValue
 
WORD_BYTE wIndex
 
uint16_t wLength
 
uint8_t bLength
 
uint8_t bDescriptorType
 
uint16_t bcdUSB
 
uint8_t bDeviceClass
 
uint8_t bDeviceSubClass
 
uint8_t bDeviceProtocol
 
uint8_t bMaxPacketSize0
 
uint16_t idVendor
 
uint16_t idProduct
 
uint16_t bcdDevice
 
uint8_t iManufacturer
 
uint8_t iProduct
 
uint8_t iSerialNumber
 
uint8_t bNumConfigurations
 
uint8_t bReserved
 
uint16_t wTotalLength
 
uint8_t bNumInterfaces
 
uint8_t bConfigurationValue
 
uint8_t iConfiguration
 
uint8_t bmAttributes
 
uint8_t bMaxPower
 
uint8_t bInterfaceNumber
 
uint8_t bAlternateSetting
 
uint8_t bNumEndpoints
 
uint8_t bInterfaceClass
 
uint8_t bInterfaceSubClass
 
uint8_t bInterfaceProtocol
 
uint8_t iInterface
 
uint8_t bEndpointAddress
 
uint16_t wMaxPacketSize
 
uint8_t bInterval
 
uint16_t bString
 

マクロ定義詳解

#define REQUEST_CLASS   1

usb.h38 行目に定義があります。

#define REQUEST_DEVICE_TO_HOST   1

usb.h34 行目に定義があります。

#define REQUEST_HOST_TO_DEVICE   0

usb.h33 行目に定義があります。

#define REQUEST_RESERVED   3

usb.h40 行目に定義があります。

#define REQUEST_STANDARD   0

usb.h37 行目に定義があります。

#define REQUEST_TO_DEVICE   0

usb.h43 行目に定義があります。

#define REQUEST_TO_ENDPOINT   2

usb.h45 行目に定義があります。

#define REQUEST_TO_INTERFACE   1

usb.h44 行目に定義があります。

#define REQUEST_TO_OTHER   3

usb.h46 行目に定義があります。

#define REQUEST_VENDOR   2

usb.h39 行目に定義があります。

#define USB_CONFIG_BUS_POWERED   0x80

usb.h119 行目に定義があります。

#define USB_CONFIG_POWER_MA (   mA)    ((mA)/2)

usb.h124 行目に定義があります。

#define USB_CONFIG_POWERED_MASK   0x40

usb.h118 行目に定義があります。

#define USB_CONFIG_REMOTE_WAKEUP   0x20

usb.h121 行目に定義があります。

#define USB_CONFIG_SELF_POWERED   0xC0

usb.h120 行目に定義があります。

#define USB_CONFIGURATION_DESCRIPTOR_TYPE   2

usb.h92 行目に定義があります。

#define USB_DEBUG_DESCRIPTOR_TYPE   10

usb.h100 行目に定義があります。

#define USB_DEVICE_CLASS_AUDIO   0x01

usb.h105 行目に定義があります。

#define USB_DEVICE_CLASS_COMMUNICATIONS   0x02

usb.h106 行目に定義があります。

#define USB_DEVICE_CLASS_HUB   0x09

usb.h113 行目に定義があります。

#define USB_DEVICE_CLASS_HUMAN_INTERFACE   0x03

usb.h107 行目に定義があります。

#define USB_DEVICE_CLASS_MISCELLANEOUS   0xEF

usb.h114 行目に定義があります。

#define USB_DEVICE_CLASS_MONITOR   0x04

usb.h108 行目に定義があります。

#define USB_DEVICE_CLASS_PHYSICAL_INTERFACE   0x05

usb.h109 行目に定義があります。

#define USB_DEVICE_CLASS_POWER   0x06

usb.h110 行目に定義があります。

#define USB_DEVICE_CLASS_PRINTER   0x07

usb.h111 行目に定義があります。

#define USB_DEVICE_CLASS_RESERVED   0x00

usb.h104 行目に定義があります。

#define USB_DEVICE_CLASS_STORAGE   0x08

usb.h112 行目に定義があります。

#define USB_DEVICE_CLASS_VENDOR_SPECIFIC   0xFF

usb.h115 行目に定義があります。

#define USB_DEVICE_DESCRIPTOR_TYPE   1

usb.h91 行目に定義があります。

#define USB_DEVICE_QUALIFIER_DESCRIPTOR_TYPE   6

usb.h96 行目に定義があります。

#define USB_ENDPOINT_DESCRIPTOR_TYPE   5

usb.h95 行目に定義があります。

#define USB_ENDPOINT_DIRECTION_MASK   0x80

usb.h127 行目に定義があります。

#define USB_ENDPOINT_IN (   addr)    ((addr) | 0x80)

usb.h129 行目に定義があります。

#define USB_ENDPOINT_OUT (   addr)    ((addr) | 0x00)

usb.h128 行目に定義があります。

#define USB_ENDPOINT_SYNC_ADAPTIVE   0x08

usb.h140 行目に定義があります。

#define USB_ENDPOINT_SYNC_ASYNCHRONOUS   0x04

usb.h139 行目に定義があります。

#define USB_ENDPOINT_SYNC_MASK   0x0C

usb.h137 行目に定義があります。

#define USB_ENDPOINT_SYNC_NO_SYNCHRONIZATION   0x00

usb.h138 行目に定義があります。

#define USB_ENDPOINT_SYNC_SYNCHRONOUS   0x0C

usb.h141 行目に定義があります。

#define USB_ENDPOINT_TYPE_BULK   0x02

usb.h135 行目に定義があります。

#define USB_ENDPOINT_TYPE_CONTROL   0x00

usb.h133 行目に定義があります。

#define USB_ENDPOINT_TYPE_INTERRUPT   0x03

usb.h136 行目に定義があります。

#define USB_ENDPOINT_TYPE_ISOCHRONOUS   0x01

usb.h134 行目に定義があります。

#define USB_ENDPOINT_TYPE_MASK   0x03

usb.h132 行目に定義があります。

#define USB_ENDPOINT_USAGE_DATA   0x00

usb.h143 行目に定義があります。

#define USB_ENDPOINT_USAGE_FEEDBACK   0x10

usb.h144 行目に定義があります。

#define USB_ENDPOINT_USAGE_IMPLICIT_FEEDBACK   0x20

usb.h145 行目に定義があります。

#define USB_ENDPOINT_USAGE_MASK   0x30

usb.h142 行目に定義があります。

#define USB_ENDPOINT_USAGE_RESERVED   0x30

usb.h146 行目に定義があります。

#define USB_FEATURE_ENDPOINT_STALL   0

usb.h77 行目に定義があります。

#define USB_FEATURE_REMOTE_WAKEUP   1

usb.h78 行目に定義があります。

#define USB_GETSTATUS_ENDPOINT_STALL   0x01

usb.h74 行目に定義があります。

#define USB_GETSTATUS_REMOTE_WAKEUP   0x02

usb.h73 行目に定義があります。

#define USB_GETSTATUS_SELF_POWERED   0x01

usb.h72 行目に定義があります。

#define USB_INTERFACE_ASSOCIATION_DESCRIPTOR_TYPE   11

usb.h101 行目に定義があります。

#define USB_INTERFACE_DESCRIPTOR_TYPE   4

usb.h94 行目に定義があります。

#define USB_INTERFACE_POWER_DESCRIPTOR_TYPE   8

usb.h98 行目に定義があります。

#define USB_OTG_DESCRIPTOR_TYPE   9

usb.h99 行目に定義があります。

#define USB_OTHER_SPEED_CONFIG_DESCRIPTOR_TYPE   7

usb.h97 行目に定義があります。

#define USB_REQUEST_CLEAR_FEATURE   1

usb.h60 行目に定義があります。

#define USB_REQUEST_GET_CONFIGURATION   8

usb.h65 行目に定義があります。

#define USB_REQUEST_GET_DESCRIPTOR   6

usb.h63 行目に定義があります。

#define USB_REQUEST_GET_INTERFACE   10

usb.h67 行目に定義があります。

#define USB_REQUEST_GET_STATUS   0

usb.h59 行目に定義があります。

#define USB_REQUEST_SET_ADDRESS   5

usb.h62 行目に定義があります。

#define USB_REQUEST_SET_CONFIGURATION   9

usb.h66 行目に定義があります。

#define USB_REQUEST_SET_DESCRIPTOR   7

usb.h64 行目に定義があります。

#define USB_REQUEST_SET_FEATURE   3

usb.h61 行目に定義があります。

#define USB_REQUEST_SET_INTERFACE   11

usb.h68 行目に定義があります。

#define USB_REQUEST_SYNC_FRAME   12

usb.h69 行目に定義があります。

#define USB_STRING_DESCRIPTOR_TYPE   3

usb.h93 行目に定義があります。

関数詳解

union _REQUEST_TYPE __attribute__ ( (packed)  )

変数詳解

cr_startup_lpc13xx.c254 行目に定義があります。

usb.h66 行目に定義があります。

uint8_t bAlternateSetting

usb.h64 行目に定義があります。

uint16_t bcdDevice

usb.h70 行目に定義があります。

uint16_t bcdUSB

usb.h63 行目に定義があります。

uint8_t bConfigurationValue

usb.h65 行目に定義があります。

uint8_t bDescriptorType

usb.h62 行目に定義があります。

uint8_t bDeviceClass

usb.h64 行目に定義があります。

uint8_t bDeviceProtocol

usb.h66 行目に定義があります。

uint8_t bDeviceSubClass

usb.h65 行目に定義があります。

uint8_t bEndpointAddress

usb.h63 行目に定義があります。

uint8_t bInterfaceClass

usb.h66 行目に定義があります。

uint8_t bInterfaceNumber

usb.h63 行目に定義があります。

uint8_t bInterfaceProtocol

usb.h68 行目に定義があります。

uint8_t bInterfaceSubClass

usb.h67 行目に定義があります。

uint8_t bInterval

usb.h66 行目に定義があります。

uint8_t bLength

usb.h61 行目に定義があります。

uint8_t bmAttributes

usb.h67 行目に定義があります。

uint8_t bMaxPacketSize0

usb.h67 行目に定義があります。

uint8_t bMaxPower

usb.h68 行目に定義があります。

REQUEST_TYPE bmRequestType

usb.h61 行目に定義があります。

uint8_t bNumConfigurations

usb.h74 行目に定義があります。

uint8_t bNumEndpoints

usb.h65 行目に定義があります。

uint8_t bNumInterfaces

usb.h64 行目に定義があります。

uint8_t bRequest

usb.h62 行目に定義があります。

uint8_t bReserved

usb.h69 行目に定義があります。

uint16_t bString

usb.h63 行目に定義があります。

uint8_t Dir

usb.h29 行目に定義があります。

usb.h26 行目に定義があります。

uint8_t iConfiguration

usb.h66 行目に定義があります。

uint16_t idProduct

usb.h69 行目に定義があります。

uint16_t idVendor

usb.h68 行目に定義があります。

uint8_t iInterface

usb.h69 行目に定義があります。

uint8_t iManufacturer

usb.h71 行目に定義があります。

uint8_t iProduct

usb.h72 行目に定義があります。

uint8_t iSerialNumber

usb.h73 行目に定義があります。

usb.h25 行目に定義があります。

uint8_t Recipient

usb.h27 行目に定義があります。

uint8_t Type

usb.h28 行目に定義があります。

WORD_BYTE wIndex

usb.h64 行目に定義があります。

uint16_t wLength

usb.h65 行目に定義があります。

uint16_t wMaxPacketSize

usb.h65 行目に定義があります。

uint16_t wTotalLength

usb.h63 行目に定義があります。

WORD_BYTE wValue

usb.h63 行目に定義があります。