aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino/HardwareSerial.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cores/arduino/HardwareSerial.cpp')
-rw-r--r--cores/arduino/HardwareSerial.cpp39
1 files changed, 1 insertions, 38 deletions
diff --git a/cores/arduino/HardwareSerial.cpp b/cores/arduino/HardwareSerial.cpp
index 9a86fa0..f95fa5d 100644
--- a/cores/arduino/HardwareSerial.cpp
+++ b/cores/arduino/HardwareSerial.cpp
@@ -283,44 +283,7 @@ HardwareSerial::HardwareSerial(
void HardwareSerial::begin(unsigned long baud)
{
- uint16_t baud_setting;
- bool use_u2x = true;
-
-#if F_CPU == 16000000UL
- // hardcoded exception for compatibility with the bootloader shipped
- // with the Duemilanove and previous boards and the firmware on the 8U2
- // on the Uno and Mega 2560.
- if (baud == 57600) {
- use_u2x = false;
- }
-#endif
-
-try_again:
-
- if (use_u2x) {
- *_ucsra = 1 << _u2x;
- baud_setting = (F_CPU / 4 / baud - 1) / 2;
- } else {
- *_ucsra = 0;
- baud_setting = (F_CPU / 8 / baud - 1) / 2;
- }
-
- if ((baud_setting > 4095) && use_u2x)
- {
- use_u2x = false;
- goto try_again;
- }
-
- // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register)
- *_ubrrh = baud_setting >> 8;
- *_ubrrl = baud_setting;
-
- transmitting = false;
-
- sbi(*_ucsrb, _rxen);
- sbi(*_ucsrb, _txen);
- sbi(*_ucsrb, _rxcie);
- cbi(*_ucsrb, _udrie);
+ begin(baud, SERIAL_8N1);
}
void HardwareSerial::begin(unsigned long baud, byte config)