forked from mfulz_github/qmk_firmware
Add notification endpoint to the incomplete TMC demo.
This commit is contained in:
parent
9274610a48
commit
be520aed52
|
@ -106,7 +106,7 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
|
|||
.InterfaceNumber = 0x00,
|
||||
.AlternateSetting = 0x00,
|
||||
|
||||
.TotalEndpoints = 2,
|
||||
.TotalEndpoints = 3,
|
||||
|
||||
.Class = 0xFE,
|
||||
.SubClass = 0x03,
|
||||
|
@ -133,6 +133,16 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
|
|||
.Attributes = (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),
|
||||
.EndpointSize = TMC_IO_EPSIZE,
|
||||
.PollingIntervalMS = 0x00
|
||||
},
|
||||
|
||||
.NotificationEndpoint =
|
||||
{
|
||||
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},
|
||||
|
||||
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | TMC_NOTIFICATION_EPNUM),
|
||||
.Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),
|
||||
.EndpointSize = TMC_NOTIFICATION_EPSIZE,
|
||||
.PollingIntervalMS = 0xFF
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -44,13 +44,19 @@
|
|||
|
||||
/* Macros: */
|
||||
/** Endpoint number of the TMC device-to-host data IN endpoint. */
|
||||
#define TMC_IN_EPNUM 3
|
||||
#define TMC_IN_EPNUM 3
|
||||
|
||||
/** Endpoint number of the TMC host-to-device data OUT endpoint. */
|
||||
#define TMC_OUT_EPNUM 4
|
||||
#define TMC_OUT_EPNUM 4
|
||||
|
||||
/** Endpoint number of the TMC notification IN endpoint. */
|
||||
#define TMC_NOTIFICATION_EPNUM 2
|
||||
|
||||
/** Size in bytes of the TMC data endpoints. */
|
||||
#define TMC_IO_EPSIZE 64
|
||||
#define TMC_IO_EPSIZE 64
|
||||
|
||||
/** Size in bytes of the TMC notification endpoint. */
|
||||
#define TMC_NOTIFICATION_EPSIZE 8
|
||||
|
||||
/* Type Defines: */
|
||||
/** Type define for the device configuration descriptor structure. This must be defined in the
|
||||
|
@ -63,6 +69,7 @@
|
|||
USB_Descriptor_Interface_t Interface;
|
||||
USB_Descriptor_Endpoint_t DataOutEndpoint;
|
||||
USB_Descriptor_Endpoint_t DataInEndpoint;
|
||||
USB_Descriptor_Endpoint_t NotificationEndpoint;
|
||||
} USB_Descriptor_Configuration_t;
|
||||
|
||||
/* Function Prototypes: */
|
||||
|
|
|
@ -120,7 +120,7 @@ void EVENT_USB_Device_ConfigurationChanged(void)
|
|||
{
|
||||
LEDs_SetAllLEDs(LEDMASK_USB_READY);
|
||||
|
||||
/* Setup TMC In and Out Endpoints */
|
||||
/* Setup TMC In, Out and Notification Endpoints */
|
||||
if (!(Endpoint_ConfigureEndpoint(TMC_IN_EPNUM, EP_TYPE_BULK,
|
||||
ENDPOINT_DIR_IN, TMC_IO_EPSIZE,
|
||||
ENDPOINT_BANK_SINGLE)))
|
||||
|
@ -134,6 +134,13 @@ void EVENT_USB_Device_ConfigurationChanged(void)
|
|||
{
|
||||
LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
|
||||
}
|
||||
|
||||
if (!(Endpoint_ConfigureEndpoint(TMC_NOTIFICATION_EPNUM, EP_TYPE_INTERRUPT,
|
||||
ENDPOINT_DIR_IN, TMC_NOTIFICATION_EPSIZE,
|
||||
ENDPOINT_BANK_SINGLE)))
|
||||
{
|
||||
LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
/** Event handler for the USB_UnhandledControlRequest event. This is used to catch standard and class specific
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
*/
|
||||
|
||||
/** \page Page_ChangeLog Project Changelog
|
||||
*
|
||||
* \section Sec_ChangeLogXXXXXX Version XXXXXX
|
||||
* There is currently no changelog information for this release.
|
||||
*
|
||||
* \section Sec_ChangeLog100807 Version 100807
|
||||
* <b>New:</b>
|
||||
|
|
|
@ -10,6 +10,9 @@
|
|||
* to the next version released. It does not indicate all new additions to the library in each version change, only
|
||||
* areas relevant to making older projects compatible with the API changes of each new release.
|
||||
*
|
||||
* \section Sec_MigrationXXXXXX Migrating from XXXXXX to XXXXXX
|
||||
* There is currently no migration information for this release.
|
||||
*
|
||||
* \section Sec_Migration100807 Migrating from 100513 to 100807
|
||||
*
|
||||
* <b>Non-USB Library Components</b>
|
||||
|
|
|
@ -43,9 +43,9 @@
|
|||
/* Public Interface - May be used in end-application: */
|
||||
/* Macros: */
|
||||
/** Indicates the version number of the library, as an integer. */
|
||||
#define LUFA_VERSION_INTEGER 0x100807
|
||||
#define LUFA_VERSION_INTEGER 0x000000
|
||||
|
||||
/** Indicates the version number of the library, as a string. */
|
||||
#define LUFA_VERSION_STRING "100807"
|
||||
#define LUFA_VERSION_STRING "XXXXXX"
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue