Fixed incorrect HID interface class and subclass values in the Mouse and KeyboardMouse demos (thanks to Brian Dickman).

Capitolised the "Descriptor_Search" and "Descriptor_Search_Comp" prefixes of the values in the DSearch_Return_ErrorCodes_t and DSearch_Comp_Return_ErrorCodes_t enums.

Minor documentation improvements.
pull/1469/head
Dean Camera 16 years ago
parent 32e735b2b2
commit 663f449c10

@ -173,7 +173,7 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
Class: 0x03,
SubClass: 0x01,
Protocol: 0x00,
Protocol: 0x01,
InterfaceStrIndex: NO_DESCRIPTOR
},
@ -219,8 +219,8 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
TotalEndpoints: 1,
Class: 0x03,
SubClass: 0x02,
Protocol: 0x00,
SubClass: 0x01,
Protocol: 0x02,
InterfaceStrIndex: NO_DESCRIPTOR
},

@ -132,8 +132,8 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
TotalEndpoints: 1,
Class: 0x03,
SubClass: 0x02,
Protocol: 0x01,
SubClass: 0x01,
Protocol: 0x02,
InterfaceStrIndex: NO_DESCRIPTOR
},

@ -181,11 +181,11 @@ DESCRIPTOR_COMPARATOR(NextCDCControlInterface)
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).SubClass == CDC_CONTROL_SUBCLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == CDC_CONTROL_PROTOCOL))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -205,11 +205,11 @@ DESCRIPTOR_COMPARATOR(NextCDCDataInterface)
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).SubClass == CDC_DATA_SUBCLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == CDC_DATA_PROTOCOL))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -230,12 +230,12 @@ DESCRIPTOR_COMPARATOR(NextInterfaceCDCDataEndpoint)
USB_Descriptor_Endpoint_t).Attributes & EP_TYPE_MASK);
if ((EndpointType == EP_TYPE_BULK) || (EndpointType == EP_TYPE_INTERRUPT))
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -143,12 +143,12 @@ DESCRIPTOR_COMPARATOR(NextHIDInterface)
if (DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Class == HID_CLASS)
{
/* Indicate that the descriptor being searched for has been found */
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
/* Current descriptor does not match what this comparator is looking for */
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -166,14 +166,14 @@ DESCRIPTOR_COMPARATOR(NextInterfaceHIDDataEndpoint)
if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)
{
/* Indicate that the descriptor being searched for has been found */
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
/* Indicate that the search has failed prematurely and should be aborted */
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
/* Current descriptor does not match what this comparator is looking for */
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -117,9 +117,9 @@ DESCRIPTOR_COMPARATOR(NextKeyboardInterface)
{
/* Check the HID descriptor class and protocol, break out if correct class/protocol interface found */
if ((DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Class == KEYBOARD_CLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == KEYBOARD_PROTOCOL))
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Subclass == KEYBOARD_SUBCLASS))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
@ -140,12 +140,12 @@ DESCRIPTOR_COMPARATOR(NextInterfaceKeyboardDataEndpoint)
if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)
{
if (DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Endpoint_t).EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -123,11 +123,11 @@ DESCRIPTOR_COMPARATOR(NextKeyboardInterface)
if ((DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Class == KEYBOARD_CLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == KEYBOARD_PROTOCOL))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -144,14 +144,14 @@ DESCRIPTOR_COMPARATOR(NextInterfaceKeyboardDataEndpoint)
if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)
{
if (DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Endpoint_t).EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -165,7 +165,7 @@ DESCRIPTOR_COMPARATOR(NextInterfaceKeyboardDataEndpoint)
DESCRIPTOR_COMPARATOR(NextHID)
{
if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_HID)
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
else
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -64,7 +64,7 @@ uint8_t GetHIDReportData(void)
return ParseControlError;
/* Send the HID report to the parser for processing */
if (ProcessHIDReport(HIDReportData, HIDReportSize, &HIDReportInfo) != HID_PARSE_Successful)
if (USB_ProcessHIDReport(HIDReportData, HIDReportSize, &HIDReportInfo) != HID_PARSE_Successful)
return ParseError;
return ParseSuccessful;

@ -310,7 +310,7 @@ void ProcessKeyboardReport(uint8_t* KeyboardReport)
(ReportItem->ItemType == REPORT_ITEM_TYPE_In))
{
/* Retrieve the keyboard scancode from the report data retrieved from the device */
bool FoundData = GetReportItemInfo(KeyboardReport, ReportItem);
bool FoundData = USB_GetHIDReportItemInfo(KeyboardReport, ReportItem);
/* For multi-report devices - if the requested data was not in the issued report, continue */
if (!(FoundData))

@ -137,11 +137,11 @@ DESCRIPTOR_COMPARATOR(NextMassStorageInterface)
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).SubClass == MASS_STORE_SUBCLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == MASS_STORE_PROTOCOL))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -162,12 +162,12 @@ DESCRIPTOR_COMPARATOR(NextInterfaceBulkDataEndpoint)
/* Check the endpoint type, break out if correct BULK type endpoint found */
if (EndpointType == EP_TYPE_BULK)
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -69,15 +69,15 @@ uint8_t ProcessConfigurationDescriptor(void)
return InvalidConfigDataReturned;
/* Get the mouse interface from the configuration descriptor */
if (USB_Host_GetNextDescriptorComp(&ConfigDescriptorSize, &ConfigDescriptorData, NextMouseInterface))
if (USB_GetNextDescriptorComp(&ConfigDescriptorSize, &ConfigDescriptorData, NextMouseInterface))
{
/* Descriptor not found, error out */
return NoHIDInterfaceFound;
}
/* Get the mouse interface's data endpoint descriptor */
if (USB_Host_GetNextDescriptorComp(&ConfigDescriptorSize, &ConfigDescriptorData,
NextInterfaceMouseDataEndpoint))
if (USB_GetNextDescriptorComp(&ConfigDescriptorSize, &ConfigDescriptorData,
NextInterfaceMouseDataEndpoint))
{
/* Descriptor not found, error out */
return NoEndpointFound;
@ -121,12 +121,12 @@ DESCRIPTOR_COMPARATOR(NextMouseInterface)
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == MOUSE_PROTOCOL))
{
/* Indicate that the descriptor being searched for has been found */
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
/* Current descriptor does not match what this comparator is looking for */
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -147,15 +147,15 @@ DESCRIPTOR_COMPARATOR(NextInterfaceMouseDataEndpoint)
if (DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Endpoint_t).EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
{
/* Indicate that the descriptor being searched for has been found */
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
/* Indicate that the search has failed prematurely and should be aborted */
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
/* Current descriptor does not match what this comparator is looking for */
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -123,11 +123,11 @@ DESCRIPTOR_COMPARATOR(NextMouseInterface)
if ((DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Class == MOUSE_CLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == MOUSE_PROTOCOL))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -144,14 +144,14 @@ DESCRIPTOR_COMPARATOR(NextInterfaceMouseDataEndpoint)
if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)
{
if (DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Endpoint_t).EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -165,7 +165,7 @@ DESCRIPTOR_COMPARATOR(NextInterfaceMouseDataEndpoint)
DESCRIPTOR_COMPARATOR(NextHID)
{
if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_HID)
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
else
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -64,7 +64,7 @@ uint8_t GetHIDReportData(void)
return ParseControlError;
/* Send the HID report to the parser for processing */
if (ProcessHIDReport(HIDReportData, HIDReportSize, &HIDReportInfo) != HID_PARSE_Successful)
if (USB_ProcessHIDReport(HIDReportData, HIDReportSize, &HIDReportInfo) != HID_PARSE_Successful)
return ParseError;
return ParseSuccessful;

@ -37,7 +37,7 @@
#define _HID_REPORT_H_
/* Includes: */
#include <LUFA/Drivers/USB/USB.h> // HID Class Report Parser
#include <LUFA/Drivers/USB/USB.h> // USB Functionality
#include "MouseHostWithParser.h"

@ -312,7 +312,7 @@ void ProcessMouseReport(uint8_t* MouseReport)
(ReportItem->ItemType == REPORT_ITEM_TYPE_In))
{
/* Get the mouse button value */
FoundData = GetReportItemInfo(MouseReport, ReportItem);
FoundData = USB_GetHIDReportItemInfo(MouseReport, ReportItem);
/* For multi-report devices - if the requested data was not in the issued report, continue */
if (!(FoundData))
@ -328,7 +328,7 @@ void ProcessMouseReport(uint8_t* MouseReport)
(ReportItem->ItemType == REPORT_ITEM_TYPE_In))
{
/* Get the mouse relative position value */
FoundData = GetReportItemInfo(MouseReport, ReportItem);
FoundData = USB_GetHIDReportItemInfo(MouseReport, ReportItem);
/* For multi-report devices - if the requested data was not in the issued report, continue */
if (!(FoundData))

@ -156,11 +156,11 @@ DESCRIPTOR_COMPARATOR(NextStillImageInterface)
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).SubClass == SIMAGE_SUBCLASS) &&
(DESCRIPTOR_CAST(CurrentDescriptor, USB_Descriptor_Interface_t).Protocol == SIMAGE_PROTOCOL))
{
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}
/** Descriptor comparator function. This comparator function is can be called while processing an attached USB device's
@ -180,12 +180,12 @@ DESCRIPTOR_COMPARATOR(NextSImageInterfaceDataEndpoint)
USB_Descriptor_Endpoint_t).Attributes & EP_TYPE_MASK);
if ((EndpointType == EP_TYPE_BULK) || (EndpointType == EP_TYPE_INTERRUPT))
return Descriptor_Search_Found;
return DESCRIPTOR_SEARCH_Found;
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
return Descriptor_Search_Fail;
return DESCRIPTOR_SEARCH_Fail;
}
return Descriptor_Search_NotFound;
return DESCRIPTOR_SEARCH_NotFound;
}

@ -52,6 +52,9 @@
* - Removed "Host_" section of the function names in ConfigDescriptor.h, as most of the routines can now be used in device mode on the
* device descriptor
* - Renamed functions in the HID parser to have a "USB_" prefix and the acronym "HID" in the name
* - Fixed incorrect HID interface class and subclass values in the Mouse and KeyboardMouse demos (thanks to Brian Dickman)
* - Capitolised the "Descriptor_Search" and "Descriptor_Search_Comp" prefixes of the values in the DSearch_Return_ErrorCodes_t and
* DSearch_Comp_Return_ErrorCodes_t enums
*
*
* \section Sec_ChangeLog090401 Version 090401

@ -66,7 +66,7 @@
#if !defined(__DOXYGEN__)
static inline void HWB_Init(void)
{
// TODO: Initialize the appropriate port pin as an input here, with pullup
// TODO: Initialize the appropriate port pin as an input here, with pull-up
}
static inline bool HWB_GetStatus(void) ATTR_WARN_UNUSED_RESULT;

@ -75,7 +75,7 @@
#endif
/* Public Interface - May be used in end-application: */
/* Psuedo-Function Macros: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Determines the currently selected dataflash chip.
*

@ -82,7 +82,7 @@
/** Maximum returnable temperature from the Temperature_GetTemperature() function. */
#define TEMP_MAX_TEMP ((TEMP_TABLE_SIZE - 1) + TEMP_TABLE_OFFSET)
/* Psuedo-Functions: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Initializes the temperature sensor driver, including setting up the appropriate ADC channel.
* This must be called before any other temperature sensor routines.

@ -62,32 +62,7 @@
#endif
/* Public Interface - May be used in end-application: */
/* Macros: */
/** Initializes the ADC, ready for conversions. This must be called before any other ADC operations.
* The "mode" parameter should be a mask comprised of a conversion mode (free running or single) and
* prescaler masks.
*/
#define ADC_Init(mode) MACROS{ ADCSRA = ((1 << ADEN) | mode); }MACROE
/** Turns off the ADC. If this is called, any further ADC operations will require a call to the
* ADC_Init() macro before the ADC can be used again.
*/
#define ADC_Off() MACROS{ ADCSRA = 0; }MACROE
/** Indicates if the ADC is enabled. This macro will return boolean true if the ADC subsystem is
* currently enabled, or false otherwise.
*/
#define ADC_GetStatus() ((ADCSRA & (1 << ADEN)) ? true : false)
/** Indicates if the current ADC conversion is completed, or still in progress. This returns boolean
* false if the reading is still taking place, or true if the conversion is complete and ready to be
* read out with ADC_GetResult().
*/
#define ADC_IsReadingComplete() (!(ADCSRA & (1 << ADSC)))
/** Returns the result of the last conversion, as a 16-bit wide integer. */
#define ADC_GetResult() ADC
/* Macros: */
/** Reference mask, for using the voltage present at the AVR's AREF pin for the ADC reference. */
#define ADC_REFERENCE_AREF 0
@ -134,6 +109,51 @@
/** Sets the ADC input clock to prescale by a factor of 128 the AVR's system clock. */
#define ADC_PRESCALE_128 ((1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0))
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Initializes the ADC, ready for conversions. This must be called before any other ADC operations.
* The "mode" parameter should be a mask comprised of a conversion mode (free running or single) and
* prescaler masks.
*
* \param Mode Mask of ADC settings, including adjustment, prescale, mode and reference
*/
static inline void ADC_Init(uint8_t Mode);
/** Turns off the ADC. If this is called, any further ADC operations will require a call to
* ADC_Init() before the ADC can be used again.
*/
static inline void ADC_Off(void);
/** Indicates if the ADC is currently enabled.
*
* \return Boolean true if the ADC subsystem is currently enabled, false otherwise.
*/
static inline bool ADC_GetStatus(void);
/** Indicates if the current ADC conversion is completed, or still in progress.
*
* \return Boolean false if the reading is still taking place, or true if the conversion is
* complete and ready to be read out with ADC_GetResult()
*/
static inline bool ADC_IsReadingComplete(void);
/** Retrieves the conversion value of the last completed ADC conversion.
*
* \return The result of the last ADC conversion
*/
static inline uint16_t ADC_GetResult(void);
#else
#define ADC_Init(mode) MACROS{ ADCSRA = ((1 << ADEN) | mode); }MACROE
#define ADC_Off() MACROS{ ADCSRA = 0; }MACROE
#define ADC_GetStatus() ((ADCSRA & (1 << ADEN)) ? true : false)
#define ADC_IsReadingComplete() (!(ADCSRA & (1 << ADSC)))
#define ADC_GetResult() ADC
#endif
/* Inline Functions: */
/** Configures the given ADC channel, ready for ADC conversions. This function sets the
* associated port pin as an input and disables the digital portion of the I/O to reduce

@ -74,7 +74,7 @@
*/
#define SERIAL_2X_UBBRVAL(baud) (((F_CPU / 8) / baud) - 1)
/* Psuedo-Functions: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Indicates whether a character has been received through the USART.
*

@ -125,9 +125,9 @@ uint8_t USB_GetNextDescriptorComp_P(uint16_t* BytesRem, uint8_t** CurrConfigLoc,
USB_GetNextDescriptor(BytesRem, CurrConfigLoc);
if ((ErrorCode = ComparatorRoutine(*CurrConfigLoc)) != Descriptor_Search_NotFound)
if ((ErrorCode = ComparatorRoutine(*CurrConfigLoc)) != DESCRIPTOR_SEARCH_NotFound)
{
if (ErrorCode == Descriptor_Search_Fail)
if (ErrorCode == DESCRIPTOR_SEARCH_Fail)
{
*CurrConfigLoc = PrevDescLoc;
*BytesRem = PrevBytesRem;
@ -137,5 +137,5 @@ uint8_t USB_GetNextDescriptorComp_P(uint16_t* BytesRem, uint8_t** CurrConfigLoc,
}
}
return Descriptor_Search_Comp_EndOfDescriptor;
return DESCRIPTOR_SEARCH_COMP_EndOfDescriptor;
}

@ -122,7 +122,7 @@
*/
#define DESCRIPTOR_COMPARATOR(name) uint8_t DCOMP_##name (void* const CurrentDescriptor)
/* Psuedo-Functions: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Searches for the next descriptor in the given configuration descriptor using a premade comparator
* function. The routine updates the position and remaining configuration descriptor bytes values
@ -146,9 +146,9 @@
* DESCRIPTOR_COMPARATOR(EndpointSearcher)
* {
* if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Endpoint)
* return Descriptor_Search_Found;
* return DESCRIPTOR_SEARCH_Found;
* else
* return Descriptor_Search_NotFound;
* return DESCRIPTOR_SEARCH_NotFound;
* }
*
* //...
@ -169,18 +169,18 @@
/** Enum for return values of a descriptor comparator made with DESCRIPTOR_COMPARATOR. */
enum DSearch_Return_ErrorCodes_t
{
Descriptor_Search_Found = 0, /**< Current descriptor matches comparator criteria. */
Descriptor_Search_Fail = 1, /**< No further descriptor could possibly match criteria, fail the search. */
Descriptor_Search_NotFound = 2, /**< Current descriptor does not match comparator criteria. */
DESCRIPTOR_SEARCH_Found = 0, /**< Current descriptor matches comparator criteria. */
DESCRIPTOR_SEARCH_Fail = 1, /**< No further descriptor could possibly match criteria, fail the search. */
DESCRIPTOR_SEARCH_NotFound = 2, /**< Current descriptor does not match comparator criteria. */
};
/** Enum for return values of USB_GetNextDescriptorComp(). */
enum DSearch_Comp_Return_ErrorCodes_t
{
Descriptor_Search_Comp_Found = 0, /**< Configuration descriptor now points to descriptor which matches
DESCRIPTOR_SEARCH_COMP_Found = 0, /**< Configuration descriptor now points to descriptor which matches
* search criteria of the given comparator function. */
Descriptor_Search_Comp_Fail = 1, /**< Comparator function returned Descriptor_Search_Fail. */
Descriptor_Search_Comp_EndOfDescriptor = 2, /**< End of configuration descriptor reached before match found. */
DESCRIPTOR_SEARCH_COMP_Fail = 1, /**< Comparator function returned Descriptor_Search_Fail. */
DESCRIPTOR_SEARCH_COMP_EndOfDescriptor = 2, /**< End of configuration descriptor reached before match found. */
};
/* Function Prototypes: */

@ -30,7 +30,7 @@
#include "HIDParser.h"
uint8_t ProcessHIDReport(const uint8_t* ReportData, uint16_t ReportSize, HID_ReportInfo_t* const ParserData)
uint8_t USB_ProcessHIDReport(const uint8_t* ReportData, uint16_t ReportSize, HID_ReportInfo_t* const ParserData)
{
HID_StateTable_t StateTable[HID_STATETABLE_STACK_DEPTH];
HID_StateTable_t* CurrStateTable = &StateTable[0];
@ -275,7 +275,7 @@ uint8_t ProcessHIDReport(const uint8_t* ReportData, uint16_t ReportSize, HID_Rep
return HID_PARSE_Successful;
}
bool GetReportItemInfo(const uint8_t* ReportData, HID_ReportItem_t* const ReportItem)
bool USB_GetHIDReportItemInfo(const uint8_t* ReportData, HID_ReportItem_t* const ReportItem)
{
uint16_t DataBitsRem = ReportItem->Attributes.BitSize;
uint16_t CurrentBit = ReportItem->BitOffset;
@ -303,7 +303,7 @@ bool GetReportItemInfo(const uint8_t* ReportData, HID_ReportItem_t* const Report
return true;
}
void SetReportItemInfo(uint8_t* ReportData, const HID_ReportItem_t* ReportItem)
void USB_SetHIDReportItemInfo(uint8_t* ReportData, const HID_ReportItem_t* ReportItem)
{
uint16_t DataBitsRem = ReportItem->Attributes.BitSize;
uint16_t CurrentBit = ReportItem->BitOffset;

@ -31,9 +31,8 @@
/** \ingroup Group_USB
* @defgroup Group_StreamCallbacks Endpoint and Pipe Stream Callbacks
*
* Macros and enums for the stream callback routines in Endpoint.h and Pipe.c. This module contains the
* code required to easily set up stream callback functions which can be used to force early abort of a
* stream read/write process.
* Macros and enums for the stream callback routines. This module contains the code required to easily set up
* stream callback functions which can be used to force early abort of a stream read/write process.
*
* @{
*/

@ -86,7 +86,7 @@
/** Indicates if the USB interface is currently suspended by the host when in device mode. When suspended,
* the device should consume minimal power, and cannot communicate to the host. If Remote Wakeup is
* supported by the device and USB_RemoteWakeupEnabled is true, suspension can be terminated by the device
* by issuing a Remote Wakup request.
* by issuing a Remote Wakeup request.
*
* \note This global is only present if the user application can be a USB device.
*

@ -67,7 +67,7 @@
*/
#define USB_DEVICE_OPT_FULLSPEED (0 << 0)
/* Psuedo-Function Macros: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Sends a Remote Wakeup request to the host. This signals to the host that the device should
* be taken out of suspended mode, and communications should resume.

@ -178,7 +178,7 @@
*/
#define ENDPOINT_INT_OUT UEIENX, (1 << RXOUTE), UEINTX, (1 << RXOUTI)
/* Psuedo-Function Macros: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Indicates the number of bytes currently stored in the current endpoint's selected bank.
*

@ -85,7 +85,7 @@
#define HOST_DEVICE_SETTLE_DELAY_MS 1500
#endif
/* Psuedo-Function Macros: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Resets the USB bus, including the endpoints in any attached device and pipes on the AVR host.
* USB bus resets leave the default control pipe configured (if already configured).

@ -61,7 +61,7 @@
*/
#define USB_OTG_STP_DATA 0
/* Psuedo-Function Macros: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Initiate a Host Negotiation Protocol request. This indicates to the other connected device
* that the device wishes to change device/host roles.

@ -242,7 +242,7 @@
*/
#define PIPE_INT_STALL UPIENX, (1 << RXSTALLE), UPINTX, (1 << RXSTALLI)
/* Psuedo-Function Macros: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Indicates the number of bytes currently stored in the current pipes's selected bank.
*
@ -367,7 +367,7 @@
*
* \see Pipe_GetErrorFlags() macro for information on retrieving the exact error flag.
*
* \return Boolean true if an error has ocurred on the selected pipe, false otherwise
* \return Boolean true if an error has occurred on the selected pipe, false otherwise
*/
static inline bool Pipe_IsError(void);
@ -379,7 +379,7 @@
/** Gets a mask of the hardware error flags which have occurred on the currently selected pipe. This
* value can then be masked against the PIPE_ERRORFLAG_* masks to determine what error has occurred.
*
* \return Mask comprising of PIPE_ERRORFLAG_* bits indicating what error has ocurred on the selected pipe
* \return Mask comprising of PIPE_ERRORFLAG_* bits indicating what error has occurred on the selected pipe
*/
static inline uint8_t Pipe_GetErrorFlags(void);

@ -28,7 +28,7 @@
* on the new endpoint management macros.
* - The Endpoint_ReadWriteAllowed() macro has been renamed to Endpoint_IsReadWriteAllowed() to be more consistent with the rest of
* the API naming scheme.
* - The Endpoint_IsSetupINReady() and Endpoint_IsOutReceived() macros have been renamed to Endpoint_IsINReady() and
* - The Endpoint_IsSetupINReady() and Endpoint_IsSetupOutReceived() macros have been renamed to Endpoint_IsINReady() and
* Endpoint_IsOUTReceived() respectively.
* - The Endpoint_IsSetupReceived() macro has been renamed to Endpoint_IsSETUPReceived().
* - The Endpoint_ClearSetupReceived() macro has been renamed to Endpoint_ClearControlSETUP().
@ -60,7 +60,8 @@
* - Functions in the ConfigDescriptor.h header file no longer have "Host_" as part of their names.
* - The ProcessHIDReport() has been renamed to USB_ProcessHIDReport(), GetReportItemInfo() has been renamed to USB_GetHIDReportItemInfo()
* and SetReportItemInfo() has been renamed to USB_GetHIDReportItemInfo().
*
* - The values of the DSearch_Return_ErrorCodes_t and DSearch_Comp_Return_ErrorCodes_t enums have had their respective "Descriptor_Search"
* and "Descriptor_Search_Comp" prefixes changed to all caps.
*
* \section Sec_Migration090401 Migrating from 090209 to 090401
*

@ -133,7 +133,7 @@
/** Task status mode constant, for passing to Scheduler_SetTaskMode() or Scheduler_SetGroupTaskMode(). */
#define TASK_STOP false
/* Psuedo-Functions: */
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
/** Starts the scheduler in its infinite loop, executing running tasks. This should be placed at the end
* of the user application's main() function, as it can never return to the calling function.

Loading…
Cancel
Save