|
|
@@ -274,41 +274,43 @@ static bool console_flush = false;
|
|
|
|
|
|
static void Console_Task(void)
|
|
|
{
|
|
|
-
|
|
|
/* Device must be connected and configured for the task to run */
|
|
|
if (USB_DeviceState != DEVICE_STATE_Configured)
|
|
|
return;
|
|
|
|
|
|
-
|
|
|
- /* Create a temporary buffer to hold the read in report from the host */
|
|
|
- uint8_t ConsoleData[CONSOLE_EPSIZE];
|
|
|
- bool data_read = false;
|
|
|
uint8_t ep = Endpoint_GetCurrentEndpoint();
|
|
|
|
|
|
- // TODO: impl receivechar()/recvchar()
|
|
|
- Endpoint_SelectEndpoint(CONSOLE_OUT_EPNUM);
|
|
|
+ #ifdef CONSOLE_IN_ENABLE
|
|
|
+ /* Create a temporary buffer to hold the read in report from the host */
|
|
|
+ uint8_t ConsoleData[CONSOLE_EPSIZE];
|
|
|
+ bool data_read = false;
|
|
|
|
|
|
- /* Check to see if a packet has been sent from the host */
|
|
|
- if (Endpoint_IsOUTReceived())
|
|
|
- {
|
|
|
- /* Check to see if the packet contains data */
|
|
|
- if (Endpoint_IsReadWriteAllowed())
|
|
|
- {
|
|
|
+ // TODO: impl receivechar()/recvchar()
|
|
|
+ Endpoint_SelectEndpoint(CONSOLE_OUT_EPNUM);
|
|
|
|
|
|
- /* Read Console Report Data */
|
|
|
- Endpoint_Read_Stream_LE(&ConsoleData, sizeof(ConsoleData), NULL);
|
|
|
- data_read = true;
|
|
|
- }
|
|
|
+ /* Check to see if a packet has been sent from the host */
|
|
|
+ if (Endpoint_IsOUTReceived())
|
|
|
+ {
|
|
|
+ /* Check to see if the packet contains data */
|
|
|
+ if (Endpoint_IsReadWriteAllowed())
|
|
|
+ {
|
|
|
|
|
|
- /* Finalize the stream transfer to send the last packet */
|
|
|
- Endpoint_ClearOUT();
|
|
|
+ /* Read Console Report Data */
|
|
|
+ Endpoint_Read_Stream_LE(&ConsoleData, sizeof(ConsoleData), NULL);
|
|
|
+ data_read = true;
|
|
|
+ }
|
|
|
|
|
|
- if (data_read) {
|
|
|
- /* Process Console Report Data */
|
|
|
- process_console_data_quantum(ConsoleData, sizeof(ConsoleData));
|
|
|
- }
|
|
|
+ /* Finalize the stream transfer to send the last packet */
|
|
|
+ Endpoint_ClearOUT();
|
|
|
|
|
|
- }
|
|
|
+ if (data_read) {
|
|
|
+ /* Process Console Report Data */
|
|
|
+ process_console_data_quantum(ConsoleData, sizeof(ConsoleData));
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ #endif
|
|
|
|
|
|
if (console_flush) {
|
|
|
/* IN packet */
|
|
|
@@ -454,10 +456,10 @@ void EVENT_USB_Device_ConfigurationChanged(void)
|
|
|
/* Setup Console HID Report Endpoints */
|
|
|
ConfigSuccess &= ENDPOINT_CONFIG(CONSOLE_IN_EPNUM, EP_TYPE_INTERRUPT, ENDPOINT_DIR_IN,
|
|
|
CONSOLE_EPSIZE, ENDPOINT_BANK_SINGLE);
|
|
|
-// #if 0
|
|
|
+ #ifdef CONSOLE_IN_ENABLE
|
|
|
ConfigSuccess &= ENDPOINT_CONFIG(CONSOLE_OUT_EPNUM, EP_TYPE_INTERRUPT, ENDPOINT_DIR_OUT,
|
|
|
CONSOLE_EPSIZE, ENDPOINT_BANK_SINGLE);
|
|
|
-// #endif
|
|
|
+ #endif
|
|
|
#endif
|
|
|
|
|
|
#ifdef NKRO_ENABLE
|