You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
993 B
Plaintext
48 lines
993 B
Plaintext
14 years ago
|
/*
|
||
|
String to Integer conversion
|
||
|
|
||
|
Reads a serial input string until it sees a newline, then converts
|
||
|
the string to a number if the characters are digits.
|
||
|
|
||
|
The circuit:
|
||
|
No external components needed.
|
||
|
|
||
|
created 29 Nov 2010
|
||
|
by Tom Igoe
|
||
|
|
||
|
This example code is in the public domain.
|
||
|
*/
|
||
|
|
||
|
String inString = ""; // string to hold input
|
||
|
|
||
|
void setup() {
|
||
|
// Initialize serial communications:
|
||
|
Serial.begin(9600);
|
||
|
}
|
||
|
|
||
|
void loop() {
|
||
|
// Read serial input:
|
||
|
while (Serial.available() > 0) {
|
||
|
int inChar = Serial.read();
|
||
|
if (isDigit(inChar)) {
|
||
|
// convert the incoming byte to a char
|
||
|
// and add it to the string:
|
||
|
inString += (char)inChar;
|
||
|
}
|
||
|
// if you get a newline, print the string,
|
||
|
// then the string's value:
|
||
|
if (inChar == '\n') {
|
||
|
Serial.print("Value:");
|
||
|
Serial.println(inString.toInt());
|
||
|
Serial.print("String: ");
|
||
|
Serial.println(inString);
|
||
|
// clear the string for new input:
|
||
|
inString = "";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|