\r
#include "USBtoSerial.h"\r
\r
-/* Project Tags, for reading out using the ButtLoad project */\r
-BUTTLOADTAG(ProjName, "LUFA USB RS232 App");\r
-BUTTLOADTAG(BuildTime, __TIME__);\r
-BUTTLOADTAG(BuildDate, __DATE__);\r
-BUTTLOADTAG(LUFAVersion, "LUFA V" LUFA_VERSION_STRING);\r
-\r
/* Scheduler Task List */\r
TASK_LIST\r
{\r
if (bmRequestType == (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE))\r
{ \r
/* Acknowledge the SETUP packet, ready for data transfer */\r
- Endpoint_ClearSetupReceived();\r
+ Endpoint_ClearControlSETUP();\r
\r
/* Write the line coding data to the control endpoint */\r
Endpoint_Write_Control_Stream_LE(LineCodingData, sizeof(LineCoding));\r
\r
/* Finalize the stream transfer to send the last packet or clear the host abort */\r
- Endpoint_ClearSetupOUT();\r
+ Endpoint_ClearControlOUT();\r
}\r
\r
break;\r
if (bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))\r
{\r
/* Acknowledge the SETUP packet, ready for data transfer */\r
- Endpoint_ClearSetupReceived();\r
+ Endpoint_ClearControlSETUP();\r
\r
/* Read the line coding data in from the host into the global struct */\r
Endpoint_Read_Control_Stream_LE(LineCodingData, sizeof(LineCoding));\r
\r
/* Finalize the stream transfer to clear the last packet from the host */\r
- Endpoint_ClearSetupIN();\r
+ Endpoint_ClearControlIN();\r
\r
/* Reconfigure the USART with the new settings */\r
ReconfigureUSART();\r
#endif\r
\r
/* Acknowledge the SETUP packet, ready for data transfer */\r
- Endpoint_ClearSetupReceived();\r
+ Endpoint_ClearControlSETUP();\r
\r
/* Acknowledge status stage */\r
- while (!(Endpoint_IsSetupINReady()));\r
- Endpoint_ClearSetupIN();\r
+ while (!(Endpoint_IsINReady()));\r
+ Endpoint_ClearControlIN();\r
}\r
\r
break;\r
Endpoint_SelectEndpoint(CDC_NOTIFICATION_EPNUM);\r
Endpoint_Write_Stream_LE(&Notification, sizeof(Notification));\r
Endpoint_Write_Stream_LE(&LineStateMask, sizeof(LineStateMask));\r
- Endpoint_ClearCurrentBank();\r
+ Endpoint_ClearIN();\r
#endif\r
\r
/* Select the Serial Rx Endpoint */\r
Endpoint_SelectEndpoint(CDC_RX_EPNUM);\r
\r
- if (Endpoint_ReadWriteAllowed())\r
+ if (Endpoint_IsOUTReceived())\r
{\r
/* Read the received data endpoint into the transmission buffer */\r
while (Endpoint_BytesInEndpoint())\r
}\r
\r
/* Clear the endpoint buffer */\r
- Endpoint_ClearCurrentBank();\r
+ Endpoint_ClearOUT();\r
}\r
\r
/* Check if Rx buffer contains data */\r
if (Tx_Buffer.Elements)\r
{\r
/* Wait until Serial Tx Endpoint Ready for Read/Write */\r
- while (!(Endpoint_ReadWriteAllowed()));\r
- \r
- /* Check before sending the data if the endpoint is completely full */\r
- bool IsFull = (Endpoint_BytesInEndpoint() == CDC_TXRX_EPSIZE);\r
+ while (!(Endpoint_IsReadWriteAllowed()));\r
\r
/* Write the transmission buffer contents to the received data endpoint */\r
while (Tx_Buffer.Elements && (Endpoint_BytesInEndpoint() < CDC_TXRX_EPSIZE))\r
Endpoint_Write_Byte(Buffer_GetElement(&Tx_Buffer));\r
\r
/* Send the data */\r
- Endpoint_ClearCurrentBank();\r
+ Endpoint_ClearIN();\r
\r
- /* If a full endpoint was sent, we need to send an empty packet afterwards to terminate the transfer */\r
- if (IsFull)\r
- {\r
- /* Wait until Serial Tx Endpoint Ready for Read/Write */\r
- while (!(Endpoint_ReadWriteAllowed()));\r
+ /* Wait until Serial Tx Endpoint Ready for Read/Write */\r
+ while (!(Endpoint_IsReadWriteAllowed()));\r
\r
- /* Send an empty packet to terminate the transfer */\r
- Endpoint_ClearCurrentBank();\r
- }\r
+ /* Send an empty packet to terminate the transfer */\r
+ Endpoint_ClearIN();\r
}\r
}\r
}\r