}\r
}\r
\r
-bool Pipe_IsEndpointBound(uint8_t EndpointAddress)\r
+bool Pipe_IsEndpointBound(const uint8_t EndpointAddress)\r
{\r
- uint8_t PrevPipeNumber = Pipe_GetPipeNumber();\r
+ uint8_t PrevPipeNumber = Pipe_GetCurrentPipe();\r
\r
for (uint8_t PNum = 0; PNum < PIPE_TOTAL_PIPES; PNum++)\r
{\r
Pipe_SelectPipe(PNum);\r
\r
- if (Pipe_IsConfigured() && (Pipe_BoundEndpointAddress() == EndpointAddress))\r
+ if (Pipe_IsConfigured() && (Pipe_BoundEndpointNumber() == (EndpointAddress & PIPE_EPNUM_MASK)))\r
return true;\r
}\r
\r
#else\r
uint16_t TimeoutMSRem = USB_STREAM_TIMEOUT_MS;\r
#endif\r
-\r
+ \r
for (;;)\r
{\r
if (Pipe_GetPipeToken() == PIPE_TOKEN_IN)\r
{\r
uint8_t ErrorCode;\r
\r
- Pipe_SetToken(PIPE_TOKEN_IN);\r
+ Pipe_SetPipeToken(PIPE_TOKEN_IN);\r
\r
if ((ErrorCode = Pipe_WaitUntilReady()))\r
return ErrorCode;\r
}\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Write_Stream_LE\r
+#define TEMPLATE_BUFFER_TYPE const void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_OUT\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearOUT()\r
#define TEMPLATE_BUFFER_OFFSET(Length) 0\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(*(BufferPtr++))\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(*((uint8_t*)BufferPtr++))\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Write_PStream_LE\r
+#define TEMPLATE_BUFFER_TYPE const void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_OUT\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearOUT()\r
#define TEMPLATE_BUFFER_OFFSET(Length) 0\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(pgm_read_byte(BufferPtr++))\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(pgm_read_byte((uint8_t*)BufferPtr++))\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Write_EStream_LE\r
+#define TEMPLATE_BUFFER_TYPE const void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_OUT\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearOUT()\r
#define TEMPLATE_BUFFER_OFFSET(Length) 0\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(eeprom_read_byte(BufferPtr++))\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(eeprom_read_byte((uint8_t*)BufferPtr++))\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Write_Stream_BE\r
+#define TEMPLATE_BUFFER_TYPE const void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_OUT\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearOUT()\r
#define TEMPLATE_BUFFER_OFFSET(Length) Length - 1\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(*(BufferPtr--))\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(*((uint8_t*)BufferPtr--))\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Write_PStream_BE\r
+#define TEMPLATE_BUFFER_TYPE const void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_OUT\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearOUT()\r
#define TEMPLATE_BUFFER_OFFSET(Length) Length - 1\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(pgm_read_byte(BufferPtr--))\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(pgm_read_byte((uint8_t*)BufferPtr--))\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Write_EStream_BE\r
+#define TEMPLATE_BUFFER_TYPE const void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_OUT\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearOUT()\r
#define TEMPLATE_BUFFER_OFFSET(Length) Length - 1\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(eeprom_read_byte(BufferPtr--))\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(eeprom_read_byte((uint8_t*)BufferPtr--))\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Read_Stream_LE\r
+#define TEMPLATE_BUFFER_TYPE void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_IN\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearIN()\r
#define TEMPLATE_BUFFER_OFFSET(Length) 0\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) *(BufferPtr++) = Pipe_Read_Byte()\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) *((uint8_t*)BufferPtr++) = Pipe_Read_Byte()\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Read_EStream_LE\r
+#define TEMPLATE_BUFFER_TYPE void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_IN\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearIN()\r
#define TEMPLATE_BUFFER_OFFSET(Length) 0\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte(BufferPtr++, Pipe_Read_Byte())\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte((uint8_t*)BufferPtr++, Pipe_Read_Byte())\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Read_Stream_BE\r
+#define TEMPLATE_BUFFER_TYPE void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_IN\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearIN()\r
#define TEMPLATE_BUFFER_OFFSET(Length) Length - 1\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) *(BufferPtr--) = Pipe_Read_Byte()\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) *((uint8_t*)BufferPtr--) = Pipe_Read_Byte()\r
#include "Template/Template_Pipe_RW.c"\r
\r
#define TEMPLATE_FUNC_NAME Pipe_Read_EStream_BE\r
+#define TEMPLATE_BUFFER_TYPE void*\r
#define TEMPLATE_TOKEN PIPE_TOKEN_IN\r
#define TEMPLATE_CLEAR_PIPE() Pipe_ClearIN()\r
#define TEMPLATE_BUFFER_OFFSET(Length) Length - 1\r
-#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte(BufferPtr--, Pipe_Read_Byte())\r
+#define TEMPLATE_TRANSFER_BYTE(BufferPtr) eeprom_write_byte((uint8_t*)BufferPtr--, Pipe_Read_Byte())\r
#include "Template/Template_Pipe_RW.c"\r
\r
#endif\r