Only deque from the USBtoSerial's USB->USART buffer when the USART is idle.
[pub/USBasp.git] / Projects / USBtoSerial / USBtoSerial.c
index 1c791d9..b51c7c2 100644 (file)
@@ -133,8 +133,8 @@ int main(void)
                        }
                }
 
-               /* Load the next byte from the USART transmit buffer into the USART */
-               if (!(RingBuffer_IsEmpty(&USBtoUSART_Buffer)))
+               /* Load the next byte from the USART transmit buffer into the USART if transmit buffer space is available */
+               if (Serial_IsSendReady() && !(RingBuffer_IsEmpty(&USBtoUSART_Buffer)))
                  Serial_SendByte(RingBuffer_Remove(&USBtoUSART_Buffer));
 
                CDC_Device_USBTask(&VirtualSerial_CDC_Interface);