From 7c8d16fd7adae430f94004048a7702b7338f5eb1 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Fri, 30 Jul 2010 01:11:04 +0000 Subject: [PATCH] Oops - need to turn off USART via control register B before reconfiguring, fix ordering of USART control register modifications in the Benito and USBtoSerial projects. --- Demos/Host/LowLevel/makefile | 8 ++++---- Projects/Benito/Benito.c | 4 ++-- Projects/USBtoSerial/USBtoSerial.c | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Demos/Host/LowLevel/makefile b/Demos/Host/LowLevel/makefile index 2a1caed5e8..2dec7c85b1 100644 --- a/Demos/Host/LowLevel/makefile +++ b/Demos/Host/LowLevel/makefile @@ -38,12 +38,12 @@ all: $(MAKE) -C PrinterHost clean $(MAKE) -C PrinterHost all - $(MAKE) -C StillImageHost clean - $(MAKE) -C StillImageHost all - $(MAKE) -C RNDISEthernetHost clean $(MAKE) -C RNDISEthernetHost all + $(MAKE) -C StillImageHost clean + $(MAKE) -C StillImageHost all + $(MAKE) -C VirtualSerialHost clean $(MAKE) -C VirtualSerialHost all @@ -57,6 +57,6 @@ all: $(MAKE) -C MouseHost $@ $(MAKE) -C MouseHostWithParser $@ $(MAKE) -C PrinterHost $@ - $(MAKE) -C StillImageHost $@ $(MAKE) -C RNDISEthernetHost $@ + $(MAKE) -C StillImageHost $@ $(MAKE) -C VirtualSerialHost $@ diff --git a/Projects/Benito/Benito.c b/Projects/Benito/Benito.c index 834554b4fc..23786fb9e0 100644 --- a/Projects/Benito/Benito.c +++ b/Projects/Benito/Benito.c @@ -236,17 +236,17 @@ void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCI } /* Must turn off USART before reconfiguring it, otherwise incorrect operation may occur */ - UCSR1A = 0; UCSR1B = 0; + UCSR1A = 0; UCSR1C = 0; /* Set the new baud rate before configuring the USART */ UBRR1 = SERIAL_2X_UBBRVAL(CDCInterfaceInfo->State.LineEncoding.BaudRateBPS); /* Reconfigure the USART in double speed mode for a wider baud rate range at the expense of accuracy */ + UCSR1C = ConfigMask; UCSR1A = (1 << U2X1); UCSR1B = ((1 << RXCIE1) | (1 << TXEN1) | (1 << RXEN1)); - UCSR1C = ConfigMask; } /** ISR to manage the reception of data from the serial port, placing received bytes into a circular buffer diff --git a/Projects/USBtoSerial/USBtoSerial.c b/Projects/USBtoSerial/USBtoSerial.c index b59a3648fd..2c2d0c0069 100644 --- a/Projects/USBtoSerial/USBtoSerial.c +++ b/Projects/USBtoSerial/USBtoSerial.c @@ -200,15 +200,15 @@ void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCI } /* Must turn off USART before reconfiguring it, otherwise incorrect operation may occur */ - UCSR1A = 0; UCSR1B = 0; + UCSR1A = 0; UCSR1C = 0; /* Set the new baud rate before configuring the USART */ UBRR1 = SERIAL_2X_UBBRVAL(CDCInterfaceInfo->State.LineEncoding.BaudRateBPS); /* Reconfigure the USART in double speed mode for a wider baud rate range at the expense of accuracy */ + UCSR1C = ConfigMask; UCSR1A = (1 << U2X1); UCSR1B = ((1 << RXCIE1) | (1 << TXEN1) | (1 << RXEN1)); - UCSR1C = ConfigMask; }