Home Page | Language Reference (extended) | SD Reference | Libraries | Comparison | Changes
Serial
available()
Description
Get the number of bytes (characters) available for reading from the serial port. This is data that's already arrived and stored in the serial receive buffer (which holds 64 bytes). available() inherits from the Stream utility class.
Syntax
Serial.available()
Arduino Mega only:
Serial1.available()
Serial2.available()
Serial3.available()
Parameters
none
Returns
the number of bytes available to read
Example
int incomingByte
=
0
; // for incoming serial data
void
setup
(
)
{
Serial.
begin
(
9600
)
; // opens serial port, sets data rate to 9600 bps
}
void
loop
(
)
{
// send data only when you receive data:
if
(
Serial.
available
(
)
>
0
)
{
// read the incoming byte:
incomingByte
=
Serial.
read
(
)
;
// say what you got:
Serial.
print
(
"I received: "
)
;
Serial.
println
(incomingByte
,
DEC
)
;
}
}
Arduino Mega example:
void
setup
(
)
{
Serial.
begin
(
9600
)
;
Serial1.
begin
(
9600
)
;
}
void
loop
(
)
{
// read from port 0, send to port 1:
if
(
Serial.
available
(
)
)
{
int inByte
=
Serial.
read
(
)
;
Serial1.
print
(inByte
,
BYTE
)
;
}
// read from port 1, send to port 0:
if
(
Serial1.
available
(
)
)
{
int inByte
=
Serial1.
read
(
)
;
Serial.
print
(inByte
,
BYTE
)
;
}
}
Arduino Mega example:
See also
Reference Home
Corrections, suggestions, and new documentation should be posted to the Forum.
The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.