Fixed spurious 0xFE USART byte sent in the USBtoSerial project when the baud rate is changed (thanks to Carl Kjeldsen).
This commit is contained in:
parent
f63496a117
commit
1b93c85b20
2 changed files with 8 additions and 0 deletions
|
@ -232,6 +232,9 @@ void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCI
|
|||
break;
|
||||
}
|
||||
|
||||
/* Keep the TX line held high (idle) while the USART is reconfigured */
|
||||
PORTD |= (1 << 3);
|
||||
|
||||
/* Must turn off USART before reconfiguring it, otherwise incorrect operation may occur */
|
||||
UCSR1B = 0;
|
||||
UCSR1A = 0;
|
||||
|
@ -244,5 +247,8 @@ void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCI
|
|||
UCSR1C = ConfigMask;
|
||||
UCSR1A = (1 << U2X1);
|
||||
UCSR1B = ((1 << RXCIE1) | (1 << TXEN1) | (1 << RXEN1));
|
||||
|
||||
/* Release the TX line after the USART has been reconfigured */
|
||||
PORTD &= ~(1 << 3);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue