Библиотека LUFA (раннее название MyUSB) версия 101122
|
Структура конфигурации и состояния USB-устройства RNDIS USB Class. More...
#include <RNDIS.h>
Data Fields | |
struct { | |
uint8_t ControlInterfaceNumber | |
uint8_t DataINEndpointNumber | |
uint16_t DataINEndpointSize | |
bool DataINEndpointDoubleBank | |
uint8_t DataOUTEndpointNumber | |
uint16_t DataOUTEndpointSize | |
bool DataOUTEndpointDoubleBank | |
uint8_t NotificationEndpointNumber | |
uint16_t NotificationEndpointSize | |
bool NotificationEndpointDoubleBank | |
char * AdapterVendorDescription | |
MAC_Address_t AdapterMACAddress | |
} | Config |
struct { | |
uint8_t RNDISMessageBuffer [RNDIS_MESSAGE_BUFFER_SIZE] | |
bool ResponseReady | |
uint8_t CurrRNDISState | |
uint32_t CurrPacketFilter | |
Ethernet_Frame_Info_t FrameIN | |
Ethernet_Frame_Info_t FrameOUT | |
} | State |
Структура состояния класса. Экземпляр этой структуры должен быть создан для каждого интерфейса RNDIS в приложении пользователя, и передан каждой функции драйвера RNDIS class в параметре RNDISInterfaceInfo. Это сохраняет информацию конфигурации и состояния каждого интерфейса RNDIS.
MAC-адрес адаптера.
Строка описания вендора адаптера.
struct { ... } USB_ClassInfo_RNDIS_Device_t::Config |
Содержит данные для интерфейса класса USB внутри устройства. Все элементы в этой секции должны быть установлены, или интерфейс не пройдет энумерацию и не будет корректно работать.
Номер управляющего интерфейса RNDIS в пределах устройства.
Текущий режим фильтра пакета, используется внутри драйвера класса.
Текущее RNDIS состояние адаптера, значение из перечисления RNDIS_States_t.
Показывает, должна ли конечная точка данных IN интерфейса RNDIS использовать двойной банк.
Номер конечной точки данных IN интерфейса RNDIS.
Размер в байтах конечной точки данных IN интерфейса RNDIS.
Показывает, должна ли конечная точка данных OUT интерфейса RNDIS использовать двойной банк.
Номер конечной точки данных OUT интерфейса RNDIS.
Размер в байтах конечной точки данных OUT интерфейса RNDIS.
Структура для удержания последнего принятого от хоста фрейма Ethernet, для обработки пользователем.
Структура удержания следующего отправляемого хосту фрейма Ethernet, для заполнения приложением пользователя.
Показывает, должна ли конечная точка оповещения интерфейса RNDIS использовать двойной банк.
Номер конечной точки оповещения IN интерфейса RNDIS, если используется.
Размер в байтах конечной точки оповещения IN интерфейса RNDIS, если используется.
Внутренний флаг, показывающий, что сообщение RNDIS ожидает возврата хосту.
uint8_t USB_ClassInfo_RNDIS_Device_t::RNDISMessageBuffer[RNDIS_MESSAGE_BUFFER_SIZE] |
Буфер для удержания сообщений RNDIS к хосту и от хоста, обрабатываемых драйвером класса.
struct { ... } USB_ClassInfo_RNDIS_Device_t::State |
Данные состояния интерфейса класса USB в пределах устройства. Все элементы в этой секции сбрасываются в свое состояние по умолчанию, когда интерфейс проходит энумерацию.