/* | |
Serial Event example | |
When new serial data arrives, this sketch adds it to a String. | |
When a newline is received, the loop prints the string and clears it. | |
A good test for this is to try it with a GPS receiver that sends out | |
NMEA 0183 sentences. | |
NOTE: The serialEvent() feature is not available on the Leonardo, Micro, or | |
other ATmega32U4 based boards. | |
created 9 May 2011 | |
by Tom Igoe | |
This example code is in the public domain. | |
https://www.arduino.cc/en/Tutorial/BuiltInExamples/SerialEvent | |
*/ | |
String inputString = ““; // a String to hold incoming data | |
bool stringComplete = false; // whether the string is complete | |
void setup() { | |
// initialize serial: | |
Serial.begin(9600); | |
// reserve 200 bytes for the inputString: | |
inputString.reserve(200); | |
} | |
void loop() { | |
// print the string when a newline arrives: | |
if (stringComplete) { | |
Serial.println(inputString); | |
// clear the string: | |
inputString = ““; | |
stringComplete = false; | |
} | |
} | |
/* | |
SerialEvent occurs whenever a new data comes in the hardware serial RX. This | |
routine is run between each time loop() runs, so using delay inside loop can | |
delay response. Multiple bytes of data may be available. | |
*/ | |
void serialEvent() { | |
while (Serial.available()) { | |
// get the new byte: | |
char inChar = (char)Serial.read(); | |
// add it to the inputString: | |
inputString += inChar; | |
// if the incoming character is a newline, set a flag so the main loop can | |
// do something about it: | |
if (inChar == ‘\n‘) { | |
stringComplete = true; | |
} | |
} | |
} |
Source: arduino-examples/SerialEvent.ino at main · arduino/arduino-examples · GitHub
arduino-examples/SerialEvent.ino at main · arduino/arduino-examples · GitHub was last modified: April 21st, 2022 by