aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino/HardwareSerial.h
diff options
context:
space:
mode:
authorDavid A. Mellis <d.mellis@arduino.cc>2012-08-30 05:08:28 -0700
committerDavid A. Mellis <d.mellis@arduino.cc>2012-08-30 05:08:28 -0700
commit6542625bc2685e1072a56afc5d366573fbaf6d26 (patch)
treec0dff4eddeab7bb94385e48ebf5cab1ea6ba4957 /cores/arduino/HardwareSerial.h
parent70b6f11d632d9549cd2ec20b9a7fbd1136c79d72 (diff)
parentaf8ff1d1e0ffd71deee03fe7f17423f8bf22be00 (diff)
Merge pull request #109 from Alarus/master
Serial.begin() parameter to set data bits, parity, stop bits.
Diffstat (limited to 'cores/arduino/HardwareSerial.h')
-rw-r--r--cores/arduino/HardwareSerial.h55
1 files changed, 54 insertions, 1 deletions
diff --git a/cores/arduino/HardwareSerial.h b/cores/arduino/HardwareSerial.h
index d4ccbec..8f00d15 100644
--- a/cores/arduino/HardwareSerial.h
+++ b/cores/arduino/HardwareSerial.h
@@ -17,6 +17,7 @@
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Modified 28 September 2010 by Mark Sproul
+ Modified 14 August 2012 by Alarus
*/
#ifndef HardwareSerial_h
@@ -37,6 +38,7 @@ class HardwareSerial : public Stream
volatile uint8_t *_ubrrl;
volatile uint8_t *_ucsra;
volatile uint8_t *_ucsrb;
+ volatile uint8_t *_ucsrc;
volatile uint8_t *_udr;
uint8_t _rxen;
uint8_t _txen;
@@ -48,9 +50,10 @@ class HardwareSerial : public Stream
HardwareSerial(ring_buffer *rx_buffer, ring_buffer *tx_buffer,
volatile uint8_t *ubrrh, volatile uint8_t *ubrrl,
volatile uint8_t *ucsra, volatile uint8_t *ucsrb,
- volatile uint8_t *udr,
+ volatile uint8_t *ucsrc, volatile uint8_t *udr,
uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udrie, uint8_t u2x);
void begin(unsigned long);
+ void begin(unsigned long, byte);
void end();
virtual int available(void);
virtual int peek(void);
@@ -65,6 +68,56 @@ class HardwareSerial : public Stream
operator bool();
};
+// Define config for Serial.begin(baud, config);
+#define _5n1_ 0x80
+#define _5N1_ 0x80
+#define _6n1_ 0x82
+#define _6N1_ 0x82
+#define _7n1_ 0x84
+#define _7N1_ 0x84
+#define _8n1_ 0x86
+#define _8N1_ 0x86
+#define _5n2_ 0x88
+#define _5N2_ 0x88
+#define _6n2_ 0x8A
+#define _6N2_ 0x8A
+#define _7n2_ 0x8C
+#define _7N2_ 0x8C
+#define _8n2_ 0x8E
+#define _8N2_ 0x8E
+#define _5e1_ 0xA0
+#define _5E1_ 0xA0
+#define _6e1_ 0xA2
+#define _6E1_ 0xA2
+#define _7e1_ 0xA4
+#define _7E1_ 0xA4
+#define _8e1_ 0xA6
+#define _8E1_ 0xA6
+#define _5e2_ 0xA8
+#define _5E2_ 0xA8
+#define _6e2_ 0xAA
+#define _6E2_ 0xAA
+#define _7e2_ 0xAC
+#define _7E2_ 0xAC
+#define _8e2_ 0xAE
+#define _8E2_ 0xAE
+#define _5o1_ 0xB0
+#define _5O1_ 0xB0
+#define _6o1_ 0xB2
+#define _6O1_ 0xB2
+#define _7o1_ 0xB4
+#define _7O1_ 0xB4
+#define _8o1_ 0xB6
+#define _8O1_ 0xB6
+#define _5o2_ 0xB8
+#define _5O2_ 0xB8
+#define _6o2_ 0xBA
+#define _6O2_ 0xBA
+#define _7o2_ 0xBC
+#define _7O2_ 0xBC
+#define _8o2_ 0xBE
+#define _8O2_ 0xBE
+
#if defined(UBRRH) || defined(UBRR0H)
extern HardwareSerial Serial;
#elif defined(USBCON)