Basic Library
Digital I/O
Analog I/O
Advanced I/O
Time
Math
Trigonometry
Random Numbers
Bits and Bytes
Interrupts
Communication
Standard Library
Servo Motor
Stepper
Liquid Crystal
EEPROM
SPI
I2C (Wire)
SD Card
SD Card (File Control)
Ethernet
Ethernet (Server)
Ethernet (Client)
Firmata
Periodic Operation
Power Save
Clock (RTC)
SoftwareSerial
Utility
Serial Communications (Serial Class)
This library allows communication between the GR-ADZUKI board and PCs or other microcontroller devices. With a total of two serial channels available, the user can specify Serial and Serial1. Serial is assigned to USB communication.
If these serial ports are missing, try SoftwareSerial.
begin
Description
Sets the data rate in bits per second (baud).
Syntax
Serial.begin(baud)
Serial.begin(baud, config)
Serial.begin(baud, config, rx_buf, tx_buf)Parameters
baud: baudrate
config: Data bit width, parity, stop bit. Select from the following:
SERIAL_7N1
SERIAL_8N1(default)
SERIAL_7N2
SERIAL_8N2
SERIAL_7E1
SERIAL_8E1
SERIAL_7E2
SERIAL_8E2
rx_buf: Buffer size for receive (default 256)
tx_buf: Buffer size for transmit (default 256)Returns
None
end
Description
Disables serial communication port.
Syntax
Serial.end()
Parameters
None
Returns
None
available
Description
Gets the number of bytes (characters) available for reading from the serial port.
Syntax
int Serial.available()
Parameters
None
Returns
The number of bytes available in the serial buffer. Returns 0 when there is no data.
read
Description
Reads one byte of data from the receive buffer in the the serial communications port.
Syntax
int Serial.read()
Parameters
None
Returns
Data. If no data available, returns -1.
peek
Description
Returns the next byte (character) of incoming serial data in the serial communications port without removing it from the receive buffer. CRLF conversion is not carried out.
Syntax
int Serial.peek()
Parameters
None
Returns
The first byte of incoming serial data available (or -1 if no data is available).
flush
Description
Waits until the send buffer of the serial communications port is empty.
Syntax
Serial.flush()
Parameters
None
Returns
None
write
Description
Writes a character string or data to the serial communications port.
Syntax
Serial.write(const char* str)Serial.write(const unsigned char* buf, int len)
Parameters
str: A string to send as a series of bytes
buf: An array (pointer) to send data
len: Length of the output (written) dataReturns
The number of bytes of output (written) data.
Description
Prints a character string to the serial communications port.
Syntax
Serial.print(val)Serial.print(val, format)
Parameters
val: The value or character string to print
format: Specifies the number base for values (BIN: binary or base 2, OCT: octal or base 8, DEC: decimal or base 10, HEX: hexadecimal or based 16)Returns
The number of bytes printed.
println
Description
Prints a character string to the serial communications port followed by a carriage return.
Syntax
Serial.println(val)Serial.println(val, format)
Parameters
val: The value or character string to print
format: Specifies the number base for values (BIN: binary or base 2, OCT: octal or base 8, DEC: decimal or base 10, HEX: hexadecimal or based 16)Returns
The number of bytes printed.
availableForWrite
Description
Get the number of bytes (characters) available for writing in the serial buffer without blocking the write operation.
Syntax
int Serial.availableForWrite()
Parameters
None
Returns
Number of bytes.
availableForRead
Description
Get the number of bytes (characters) available for receiving.
Syntax
int Serial.availableForRead()
Parameters
None
Returns
Number of bytes.
Example
The data from Serial is output to Serial1. The data from Serial1 is output to Serial.
#include <Arduino.h>
void setup()
{
Serial.begin(9600);
Serial1.begin(9600);
}
void loop()
{
if(Serial.available())
{
char c = Serial.read();
Serial1.write(c);
}
if(Serial1.available())
{
char c = Serial1.read();
Serial.write(c);
}
}