Библиотека LUFA (раннее название MyUSB) версия 101122
Поддержка пакета конечной точки

Functions

static void Endpoint_AbortPendingIN (void)
static uint8_t Endpoint_GetBusyBanks (void)
static bool Endpoint_IsReadWriteAllowed (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
static bool Endpoint_IsINReady (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
static bool Endpoint_IsOUTReceived (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
static bool Endpoint_IsSETUPReceived (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
static void Endpoint_ClearSETUP (void) ATTR_ALWAYS_INLINE
static void Endpoint_ClearIN (void) ATTR_ALWAYS_INLINE
static void Endpoint_ClearOUT (void) ATTR_ALWAYS_INLINE
static void Endpoint_StallTransaction (void) ATTR_ALWAYS_INLINE
static void Endpoint_ClearStall (void) ATTR_ALWAYS_INLINE
static bool Endpoint_IsStalled (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE

Detailed Description

Функции, макросы, переменные, перечисления и типы, связанные с обработкой пакета конечных точек.


Function Documentation

static void Endpoint_AbortPendingIN ( void  ) [inline, static]

Обрывает все ожидающие транзакции IN на текущей выбранной конечной точке, как только банк поставлен в очередь на передачу к хосту через Endpoint_ClearIN(). Эта функция обрывает все ожидающие транзакции, сбрасывая все банки конечной точки, чтобы быть готовым к следующему пакету.

static void Endpoint_ClearIN ( void  ) [inline, static]

Отправляет пакет IN на хост текущую выбранную конечную точку, освобождая конечную точку для следующего пакета с переключением на другой банк, если используется два банка.

static void Endpoint_ClearOUT ( void  ) [inline, static]

Подтверждает пакет OUT для хоста на текущей выбранной конечной точке, освобождая конечную точку для следующего пакета с переключением на другой банк, если используется два банка.

static void Endpoint_ClearSETUP ( void  ) [inline, static]

Очищает принятый пакет SETUP на текущей выбранной конечной точке типа CONTROL, что освобождает конечную точку для следующего пакета.

Note:
Это применимо только для конечной точки типа CONTROL.
static void Endpoint_ClearStall ( void  ) [inline, static]

Очистка состояния STALL на текущей выбранной конечной точке.

static uint8_t Endpoint_GetBusyBanks ( void  ) [inline, static]

Запрашивает количество занятых банков на текущей выбранной конечной точке, которые поставлены в очередь на передачу командой Endpoint_ClearIN(), или ожидают подтверждения командой Endpoint_ClearOUT().

Returns:
количество занятых банков на выбранной конечной точке.
static bool Endpoint_IsINReady ( void  ) [inline, static]

Определяет, готова ли выбранная конечная точка IN к отправке нового пакета хосту.

Returns:
двоичное true, если текущая конечная точка готова для пакета IN, иначе false.
static bool Endpoint_IsOUTReceived ( void  ) [inline, static]

Определяет, имеет ли выбранная конечная точка OUT новый принятый пакет от хоста.

Returns:
двоичное true, если текущая конечная точка имеет принятый пакет OUT, иначе false.
static bool Endpoint_IsReadWriteAllowed ( void  ) [inline, static]

Определяет, можно ли читать текущую выбранную конечную точку (если данные ожидают в банке конечной точки, и она находится в направлении OUT, или если банк пока не заполнен, если конечная точка находится в направлении IN). Эта функция вернет false, если на конечной точке произошла ошибка, если конечная точка находится в направлении OUT и не был принят пакет (или был пустой пакет), или если конечная точка находится в направлениии IN, и банк конечной точки заполнен.

Returns:
двоичное true, если текущая выбранная конечная точка может быть прочитана или записана (в зависимости от её направления).
static bool Endpoint_IsSETUPReceived ( void  ) [inline, static]

Определяет, имеет ли текушая конечная точка типа CONTROL принятый пакет SETUP.

Returns:
двоичное true, если выбранная конечная точка имеет принятый пакет SETUP, иначе false.
static bool Endpoint_IsStalled ( void  ) [inline, static]

Определяет, находится ли выбранная конечная точка в состоянии останова.

Returns:
двоичное true, если выбранная конечная точка находится в состоянии останова, иначе false.
static void Endpoint_StallTransaction ( void  ) [inline, static]

Переводит текущую конечную точку в режим останова (stall), что показывает хосту логическую проблему с этой конечной точкой, и текущая последовательность передачи должна быть оборвана. Это предоставляет устройствам USB метод указать хосту на неверную команду, чтобы текущая передача могла быть прервана, и хост мог начать собственную последовательность восстановления.

Текущая выбранная конечная точка остается в состоянии stall, пока либо не будет вызван макрос Endpoint_ClearStall(), либо хост не выдаст запрос CLEAR FEATURE на устройство для текущей выбранной конечной точки.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines