diff options
Diffstat (limited to 'Demos/Host')
-rw-r--r-- | Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.c | 20 | ||||
-rw-r--r-- | Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.h | 1 |
2 files changed, 20 insertions, 1 deletions
diff --git a/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.c b/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.c index d35d22af1..28d7b172d 100644 --- a/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.c +++ b/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.c @@ -146,7 +146,7 @@ int main(void) USB_HostState = HOST_STATE_Configured;
break;
case HOST_STATE_Configured:
- // TODO
+ PrintIncommingPackets();
break;
}
@@ -156,6 +156,24 @@ int main(void) }
}
+/** Prints incomming packets from the attached RNDIS device to the serial port. */
+void PrintIncommingPackets(void)
+{
+ uint16_t PacketLength;
+
+ RNDIS_Host_ReadPacket(&Ethernet_RNDIS_Interface, &PacketBuffer, &PacketLength);
+
+ if (PacketLength)
+ {
+ printf("***PACKET (Size %d)***\r\n", PacketLength);
+
+ for (uint16_t i = 0; i < PacketLength; i++)
+ printf("%02x ", PacketBuffer[i]);
+
+ printf("\r\n\r\n");
+ }
+}
+
/** Configures the board hardware and chip peripherals for the demo's functionality. */
void SetupHardware(void)
{
diff --git a/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.h b/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.h index ce0474a54..5f8498024 100644 --- a/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.h +++ b/Demos/Host/ClassDriver/RNDISEthernetHost/RNDISEthernetHost.h @@ -65,6 +65,7 @@ /* Function Prototypes: */
void SetupHardware(void);
+ void PrintIncommingPackets(void);
void EVENT_USB_Host_HostError(const uint8_t ErrorCode);
void EVENT_USB_Host_DeviceAttached(void);
|