X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/9051d3beb0c5c4ec1e33749d8f806f5492fbe742..06de32b1c2f55f0003e2940e9053bc63a0be7591:/Projects/USBtoSerial/USBtoSerial.c diff --git a/Projects/USBtoSerial/USBtoSerial.c b/Projects/USBtoSerial/USBtoSerial.c index 9ce00bf13..c34fcf70a 100644 --- a/Projects/USBtoSerial/USBtoSerial.c +++ b/Projects/USBtoSerial/USBtoSerial.c @@ -37,17 +37,16 @@ #include "USBtoSerial.h" /** Circular buffer to hold data from the host before it is sent to the device via the serial port. */ -RingBuffer_t USBtoUSART_Buffer; +static RingBuffer_t USBtoUSART_Buffer; /** Underlying data buffer for \ref USBtoUSART_Buffer, where the stored bytes are located. */ -uint8_t USBtoUSART_Buffer_Data[128]; +static uint8_t USBtoUSART_Buffer_Data[128]; /** Circular buffer to hold data from the serial port before it is sent to the host. */ -RingBuffer_t USARTtoUSB_Buffer; +static RingBuffer_t USARTtoUSB_Buffer; /** Underlying data buffer for \ref USARTtoUSB_Buffer, where the stored bytes are located. */ -uint8_t USARTtoUSB_Buffer_Data[128]; - +static uint8_t USARTtoUSB_Buffer_Data[128]; /** LUFA CDC Class driver interface configuration and state information. This structure is * passed to all CDC Class driver functions, so that multiple instances of the same class @@ -73,6 +72,7 @@ USB_ClassInfo_CDC_Device_t VirtualSerial_CDC_Interface = }, }; + /** Main program entry point. This routine contains the overall program flow, including initial * setup of all components and the main program loop. */ @@ -100,7 +100,7 @@ int main(void) /* Check if the UART receive buffer flush timer has expired or the buffer is nearly full */ uint16_t BufferCount = RingBuffer_GetCount(&USARTtoUSB_Buffer); - if ((TIFR0 & (1 << TOV0)) || (BufferCount > 200)) + if ((TIFR0 & (1 << TOV0)) || (BufferCount > (uint8_t)(sizeof(USARTtoUSB_Buffer_Data) * .75))) { /* Clear flush timer expiry flag */ TIFR0 |= (1 << TOV0);