Библиотека LUFA (раннее название MyUSB) версия 101122
|
Определения стандартных дескрипторов USB. More...
#include <avr/pgmspace.h>
#include <stdbool.h>
#include <stdint.h>
#include <stddef.h>
#include "../../../Common/Common.h"
#include "USBMode.h"
#include "Events.h"
#include "../LowLevel/Device.h"
Data Structures | |
struct | USB_Descriptor_Header_t |
Стандартный заголовок дескриптора USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_Header_t |
Стандартный заголовок дескриптора USB (стиль именования USB-IF). More... | |
struct | USB_Descriptor_Device_t |
Стандартный дескриптор устройства USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_Device_t |
Стандартный дескриптор устройства USB (стиль именования USB-IF). More... | |
struct | USB_Descriptor_Configuration_Header_t |
Стандартный дескриптор конфигурации USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_Configuration_Header_t |
Стандартный дескриптор конфигурации USB (стиль именования USB-IF). More... | |
struct | USB_Descriptor_Interface_t |
Стандартный дескриптор интерфейса USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_Interface_t |
Стандартный дескриптор интерфейса USB (стиль именования USB-IF). More... | |
struct | USB_Descriptor_Interface_Association_t |
Стандартный дескриптор связи интерфейсов USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_Interface_Association_t |
Стандартный дескриптор связи интерфейсов USB (стиль именования USB-IF). More... | |
struct | USB_Descriptor_Endpoint_t |
Стандартный дескриптор конечной точки USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_Endpoint_t |
Стандартный дескриптор конечной точки USB (стиль именования USB-IF). More... | |
struct | USB_Descriptor_String_t |
Стандартный строковый дескриптор USB (стиль именования LUFA). More... | |
struct | USB_StdDescriptor_String_t |
Стандартный строковый дескриптор USB (стиль именования USB-IF). More... | |
Defines | |
#define | NO_DESCRIPTOR 0 |
#define | USE_INTERNAL_SERIAL NO_DESCRIPTOR |
#define | USB_CONFIG_POWER_MA(mA) ((mA) >> 1) |
#define | USB_STRING_LEN(str) (sizeof(USB_Descriptor_Header_t) + ((str) << 1)) |
#define | VERSION_BCD(x) |
#define | LANGUAGE_ID_ENG 0x0409 |
Маски адреса направления конечной точки | |
#define | ENDPOINT_DESCRIPTOR_DIR_IN 0x80 |
#define | ENDPOINT_DESCRIPTOR_DIR_OUT 0x00 |
Маски атрибута дескриптора конфигурации USB | |
#define | USB_CONFIG_ATTR_BUSPOWERED 0x80 |
#define | USB_CONFIG_ATTR_SELFPOWERED 0x40 |
#define | USB_CONFIG_ATTR_REMOTEWAKEUP 0x20 |
Маски атрибута дескриптора конечной точки | |
#define | ENDPOINT_ATTR_NO_SYNC (0 << 2) |
#define | ENDPOINT_ATTR_ASYNC (1 << 2) |
#define | ENDPOINT_ATTR_ADAPTIVE (2 << 2) |
#define | ENDPOINT_ATTR_SYNC (3 << 2) |
Маски использования дескриптора конечной точки | |
#define | ENDPOINT_USAGE_DATA (0 << 4) |
#define | ENDPOINT_USAGE_FEEDBACK (1 << 4) |
#define | ENDPOINT_USAGE_IMPLICIT_FEEDBACK (2 << 4) |
Enumerations | |
enum | USB_DescriptorTypes_t { DTYPE_Device = 0x01, DTYPE_Configuration = 0x02, DTYPE_String = 0x03, DTYPE_Interface = 0x04, DTYPE_Endpoint = 0x05, DTYPE_DeviceQualifier = 0x06, DTYPE_Other = 0x07, DTYPE_InterfacePower = 0x08, DTYPE_InterfaceAssociation = 0x0B, DTYPE_CSInterface = 0x24, DTYPE_CSEndpoint = 0x25 } |
enum | USB_Descriptor_ClassSubclassProtocol_t { USB_CSCP_NoDeviceClass = 0x00, USB_CSCP_NoDeviceSubclass = 0x00, USB_CSCP_NoDeviceProtocol = 0x00, USB_CSCP_VendorSpecificClass = 0xFF, USB_CSCP_VendorSpecificSubclass = 0xFF, USB_CSCP_VendorSpecificProtocol = 0xFF, USB_CSCP_IADDeviceClass = 0xEF, USB_CSCP_IADDeviceSubclass = 0x02, USB_CSCP_IADDeviceProtocol = 0x01 } |
Этот файл содержит структуры и макросы для простого создания стандартных дескрипторов USB в проектах USB-устройств.