else\r
{\r
/* Indicate that all in-progress/pending data IN requests should be aborted */\r
- IsTMCBulkINReset = true;\r
+ IsTMCBulkINReset = true;\r
\r
/* Save the split request for later checking when a new request is received */\r
RequestInProgess = Req_InitiateAbortBulkIn;\r
\r
Endpoint_Read_Stream_LE(&MessageHeader, sizeof(MessageHeader), StreamCallback_AbortOUTOnRequest);\r
CurrentTransferTag = MessageHeader.Tag;\r
-\r
+ \r
switch (MessageHeader.MessageID)\r
{\r
case TMC_MESSAGEID_DEV_DEP_MSG_OUT:\r
\r
break;\r
case TMC_MESSAGEID_DEV_VENDOR_IN:\r
+\r
+ break;\r
+ default:\r
+ Endpoint_StallTransaction();\r
break;\r
}\r
\r
uint8_t Reserved2[6];\r
uint8_t Reserved3[12]; \r
} TMC_Capabilities_t;\r
+ \r
+ typedef struct\r
+ {\r
+ unsigned char LastMessageTransaction : 1;\r
+ unsigned char Reserved : 7;\r
+\r
+ uint8_t Reserved2[3];\r
+ } TMC_DevOUTMessageHeader_t;\r
\r
typedef struct\r
{\r
- uint8_t MessageID;\r
- uint8_t Tag;\r
- uint8_t InverseTag;\r
- uint8_t Reserved;\r
+ unsigned char TermCharEnabled : 1;\r
+ unsigned char Reserved : 7;\r
+\r
+ uint8_t TermChar;\r
+ uint8_t Reserved2[2];\r
+ } TMC_DevINMessageHeader_t;\r
+\r
+ typedef struct\r
+ {\r
+ uint8_t MessageID;\r
+ uint8_t Tag;\r
+ uint8_t InverseTag;\r
+ uint8_t Reserved;\r
+ uint32_t TransferSize;\r
+ \r
+ union\r
+ {\r
+ TMC_DevOUTMessageHeader_t DeviceOUT;\r
+ TMC_DevINMessageHeader_t DeviceIN;\r
+ uint32_t VendorSpecific;\r
+ } MessageIDSpecific;\r
} TMC_MessageHeader_t;\r
- \r
+\r
/* Function Prototypes: */\r
void SetupHardware(void);\r
void TMC_Task(void);\r
#define ENDPOINT_CONTROLEP 0
#if (!defined(FIXED_CONTROL_ENDPOINT_SIZE) || defined(__DOXYGEN__))
- /** Default size of the default control endpoint's bank, until altered by the Endpoint0Size value
- * in the device descriptor. Not available if the FIXED_CONTROL_ENDPOINT_SIZE token is defined.
+ /** Default size of the default control endpoint's bank, until altered by the control endpoint bank size
+ * value in the device descriptor. Not available if the FIXED_CONTROL_ENDPOINT_SIZE token is defined.
*/
#define ENDPOINT_CONTROLEP_DEFAULT_SIZE 8
#endif
if (CurrentLoggingTicks++ < LoggingInterval500MS_SRAM)
return;
- LEDs_SetAllLEDs(LEDMASK_USB_BUSY);
-
/* Reset log tick counter to prepare for next logging interval */
CurrentLoggingTicks = 0;
+
+ LEDs_SetAllLEDs(LEDMASK_USB_BUSY);
/* Only log when not connected to a USB host */
if (USB_DeviceState == DEVICE_STATE_Unattached)