X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/dfe50ff34970eda173cafbb3d636a5f7bedc87bd..ad4308b1d123c36df674f553bb0c43f23cd7a99a:/Projects/XPLAINBridge/Lib/SoftUART.c diff --git a/Projects/XPLAINBridge/Lib/SoftUART.c b/Projects/XPLAINBridge/Lib/SoftUART.c index 8710722e4..b96b45f4d 100644 --- a/Projects/XPLAINBridge/Lib/SoftUART.c +++ b/Projects/XPLAINBridge/Lib/SoftUART.c @@ -51,7 +51,7 @@ static uint8_t RX_BitsRemaining; /** Temporary data variable to hold the byte being received as it is shifted in */ static uint8_t RX_Data; -/** Initializes the software UART, ready for data transmission and reception into the global ring buffers. */ +/** Initialises the software UART, ready for data transmission and reception into the global ring buffers. */ void SoftUART_Init(void) { /* Set TX pin to output high, enable RX pull-up */ @@ -140,7 +140,7 @@ ISR(TIMER3_COMPA_vect, ISR_BLOCK) TX_Data >>= 1; TX_BitsRemaining--; } - else if (USBtoUART_Buffer.Count && !(RX_BitsRemaining)) + else if (!(RX_BitsRemaining) && !(RingBuffer_IsEmpty(&USBtoUART_Buffer))) { /* Start bit - TX line low */ STXPORT &= ~(1 << STX);