Serial.parseInt()

Description

Looks for the next valid integer in the incoming serial. The function terminates if it times out (see Serial.setTimeout()).

Serial.parseInt() inherits from the Stream utility class.

In particular:

  • Parsing stops when no characters have been read for a configurable time-out value, or a non-digit is read;
  • If no valid digits were read when the time-out (see Serial.setTimeout()) occurs, 0 is returned;

Syntax

Serial.parseInt()

Serial.parseInt(lookahead)

Serial.parseInt(lookahead, ignore)

Parameter Values

  • Serial: serial port object. See the list of available serial ports for each board on the Serial main page.
  • lookahead: the mode used to look ahead in the stream for an integer. Allowed data types: LookaheadMode. Allowed lookahead values:
    • SKIP_ALL: all characters other than digits or a minus sign are ignored when scanning the stream for an integer. This is the default mode.
    • SKIP_NONE: Nothing is skipped, and the stream is not touched unless the first waiting character is valid.
    • SKIP_WHITESPACE: Only tabs, spaces, line feeds, and carriage returns are skipped.
  • ignore: used to skip the indicated char in the search. Used for example to skip thousands divider. Allowed data types: char

Return Values

  • The next valid integer. Data type: long.

Example Code

void setup() { Serial.begin(9600); } void loop() { if (Serial.available() > 0) { long myInt = Serial.parseInt(SKIP_ALL, '\n'); // prints the received integer Serial.print("I received: "); Serial.println(myInt); } }
  • Compile and upload the above code to Arduino
  • Open Serial Monitor and select Newline option
  • Type -125 on Serial Monitor and click Send button:
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
Arduino Uno on COM15
2
  • The result on Serial Monitor:
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
I received: -125
Ln 11, Col 1
Arduino Uno on COM15
2

※ NOTES AND WARNINGS:

Serial functions are not only used for the communication between an Arduino board and Serial Monitor of Arduino IDE but also used for the communication between:

  • An Arduino board and other Arduino board
  • An Arduino board and other sensors/devices
  • An Arduino board and computer (any Serial software on computer)* An Arduino board and other Arduino board
  • An Arduino board and other sensors/devices
  • An Arduino board and computer (any Serial software on computer)

See Also

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Disclosure: Some links in this section are Amazon affiliate links. If you make a purchase through these links, we may earn a commission at no extra cost to you.
Additionally, some links direct to products from our own brand, DIYables .

※ OUR MESSAGES