diff options
Diffstat (limited to 'Projects/XPLAINBridge')
-rw-r--r-- | Projects/XPLAINBridge/Lib/SoftUART.c | 4 | ||||
-rw-r--r-- | Projects/XPLAINBridge/XPLAINBridge.c | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/Projects/XPLAINBridge/Lib/SoftUART.c b/Projects/XPLAINBridge/Lib/SoftUART.c index 5e8e03e5d..ff152e7eb 100644 --- a/Projects/XPLAINBridge/Lib/SoftUART.c +++ b/Projects/XPLAINBridge/Lib/SoftUART.c @@ -40,7 +40,7 @@ #include "SoftUART.h" /** Total number of bits remaining to be sent in the current frame */ -static uint8_t TX_BitsRemaining +static uint8_t TX_BitsRemaining; /** Temporary data variable to hold the byte being transmitted as it is shifted out */ static uint8_t TX_Data; @@ -76,7 +76,7 @@ void SoftUART_Init(void) ISR(INT0_vect) { /* Set reception channel to fire 1.5 bits past the beginning of the start bit */ - OCR1A = TCNT1 + ((BIT_TIME * 3) / 2) - 1; + OCR1A = TCNT1 + ((BIT_TIME * 3) / 2); /* Clear the received data temporary variable, reset the current received bit position mask */ RX_Data = 0; diff --git a/Projects/XPLAINBridge/XPLAINBridge.c b/Projects/XPLAINBridge/XPLAINBridge.c index d92e2b493..79e1ddb32 100644 --- a/Projects/XPLAINBridge/XPLAINBridge.c +++ b/Projects/XPLAINBridge/XPLAINBridge.c @@ -121,13 +121,13 @@ void USARTBridge_Task(void) return; /* Read bytes from the USB OUT endpoint into the UART transmit buffer */ - for (uint8_t DataBytesRem = CDC_Device_BytesReceived(&VirtualSerial_CDC_Interface); DataBytesRem != 0; DataBytesRem--) + if (CDC_Device_BytesReceived(&VirtualSerial_CDC_Interface)) RingBuffer_Insert(&USBtoUART_Buffer, CDC_Device_ReceiveByte(&VirtualSerial_CDC_Interface)); /* Read bytes from the UART receive buffer into the USB IN endpoint */ if (UARTtoUSB_Buffer.Count) CDC_Device_SendByte(&VirtualSerial_CDC_Interface, RingBuffer_Remove(&UARTtoUSB_Buffer)); - + CDC_Device_USBTask(&VirtualSerial_CDC_Interface); } @@ -147,6 +147,7 @@ void SetupHardware(void) USB_Init(); V2Protocol_Init(); + #if 0 /* Disable JTAG debugging */ MCUCR |= (1 << JTD); MCUCR |= (1 << JTD); @@ -161,6 +162,9 @@ void SetupHardware(void) /* Re-enable JTAG debugging */ MCUCR &= ~(1 << JTD); MCUCR &= ~(1 << JTD); + #endif + + CurrentFirmwareMode = MODE_USART_BRIDGE; } /** Event handler for the library USB Configuration Changed event. */ |