Pipe_SelectPipe(PNum);\r
\r
uint8_t PipeToken = Pipe_GetPipeToken();\r
+ bool PipeTokenCorrect = true;\r
\r
if (PipeToken != PIPE_TOKEN_SETUP)\r
- PipeToken = (PipeToken == ((EndpointAddress & PIPE_EPDIR_MASK) ? PIPE_TOKEN_IN : PIPE_TOKEN_OUT));\r
+ PipeTokenCorrect = (PipeToken == ((EndpointAddress & PIPE_EPDIR_MASK) ? PIPE_TOKEN_IN : PIPE_TOKEN_OUT));\r
\r
- if (Pipe_IsConfigured() && (Pipe_BoundEndpointNumber() == (EndpointAddress & PIPE_EPNUM_MASK)) && PipeToken)\r
- { \r
- return true;\r
- }\r
+ if (Pipe_IsConfigured() && PipeTokenCorrect && (Pipe_BoundEndpointNumber() == (EndpointAddress & PIPE_EPNUM_MASK)))\r
+ return true;\r
}\r
\r
Pipe_SelectPipe(PrevPipeNumber);\r
#define TEMPLATE_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(pgm_read_byte((uint8_t*)BufferPtr++))\r
#include "Template/Template_Pipe_RW.c"\r
\r
-#if defined(__AVR__)\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((uint8_t*)BufferPtr++))\r
- #include "Template/Template_Pipe_RW.c"\r
-#endif\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((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_TRANSFER_BYTE(BufferPtr) Pipe_Write_Byte(pgm_read_byte((uint8_t*)BufferPtr--))\r
#include "Template/Template_Pipe_RW.c"\r
\r
-#if defined(__AVR__)\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((uint8_t*)BufferPtr--))\r
- #include "Template/Template_Pipe_RW.c"\r
-#endif\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((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_TRANSFER_BYTE(BufferPtr) *((uint8_t*)BufferPtr++) = Pipe_Read_Byte()\r
#include "Template/Template_Pipe_RW.c"\r
\r
-#if defined(__AVR__)\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((uint8_t*)BufferPtr++, Pipe_Read_Byte())\r
- #include "Template/Template_Pipe_RW.c"\r
-#endif\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((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_TRANSFER_BYTE(BufferPtr) *((uint8_t*)BufferPtr--) = Pipe_Read_Byte()\r
#include "Template/Template_Pipe_RW.c"\r
\r
-#if defined(__AVR__)\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((uint8_t*)BufferPtr--, Pipe_Read_Byte())\r
- #include "Template/Template_Pipe_RW.c"\r
-#endif\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((uint8_t*)BufferPtr--, Pipe_Read_Byte())\r
+#include "Template/Template_Pipe_RW.c"\r
\r
#endif\r