+ /* Check if the receive buffer flush period has expired */
+ RingBuff_Count_t BufferCount = RingBuffer_GetCount(&Tx_Buffer);
+ if (!(--FlushPeriodRemaining) || (BufferCount > 200))
+ {
+ /* Echo bytes from the target to the host via the virtual serial port */
+ if (BufferCount)
+ {
+ while (BufferCount--)
+ CDC_Device_SendByte(&VirtualSerial_CDC_Interface, RingBuffer_Remove(&Tx_Buffer));
+
+ LEDs_TurnOnLEDs(LEDMASK_RX);
+ PulseMSRemaining.RxLEDPulse = TX_RX_LED_PULSE_MS;
+ }
+
+ FlushPeriodRemaining = RECEIVE_BUFFER_FLUSH_MS;
+ }
+