Serial.setTimeout()
Beschreibung
Serial.setTimeout() legt die maximalen Millisekunden für das Warten auf serielle Daten fest. Der Standardwert ist 1000 Millisekunden.
Serial.setTimeout() erbt von der Stream-Dienstklasse.
Syntax
Serial.setTimeout(time)
Parameter
- Serial: Serielles Port-Objekt. Die Liste der verfügbaren seriellen Anschlüsse für jedes Board auf der Serial-Hauptseite.
- time: Timeout-Dauer in Millisekunden. Erlaubte Datentypen: long.
Rückgabewert
Nichts.
Beispielcode
- Compile and upload the below code to Arduino
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
Serial.setTimeout(100); // set new value to 100 milliseconds
Serial.print("Timeout: ");
Serial.println(Serial.getTimeout()); // print the new value
}
void loop() {
// check if data is available
if (Serial.available() > 0) {
// read the incoming string:
String incomingString = Serial.readString();
// prints the received data
Serial.print("I received: ");
Serial.println(incomingString);
}
}
- Type "Arduino" on Serial Monitor and click Send button:
COM6
Timeout: 100
Autoscroll
Clear output
9600 baud
Newline
- Das ergebnis am seriellen monitor:
COM6
Timeout: 100
I received: Arduino
Autoscroll
Clear output
9600 baud
Newline
- Modify the code to change timeout from 100ms to 1ms
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
Serial.setTimeout(1); // set new value to 1 milliseconds
Serial.print("Timeout: ");
Serial.println(Serial.getTimeout()); // print the new value
}
void loop() {
// check if data is available
if (Serial.available() > 0) {
// read the incoming string:
String incomingString = Serial.readString();
// prints the received data
Serial.print("I received: ");
Serial.println(incomingString);
}
}
- Compile and upload the above code to Arduino
- Type "Arduino" on Serial Monitor and click Send button:
COM6
Timeout: 100
I received: Arduino
Timeout: 1
Autoscroll
Clear output
9600 baud
Newline
- Das ergebnis am seriellen monitor:
COM6
Timeout: 100
I received: Arduino
Timeout: 1
I received: A
I received: r
I received: d
I received: u
I received: i
I received: no
Autoscroll
Clear output
9600 baud
Newline
When timeout is small, a single string is read multiple time.
※ Anmerkungen und Warnungen:
- Serielle Funktionen, die den eingestellten Timeout-Wert verwenden Serial.setTimeout():
- 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)
Siehe Auch
- Sprache : Arduino - Serial
- Sprache : Serial.available()
- Sprache : Serial.availableForWrite()
- Sprache : Serial.begin()
- Sprache : Serial.end()
- Sprache : Serial.find()
- Sprache : Serial.findUntil()
- Sprache : Serial.flush()
- Sprache : Serial.getTimeout()
- Sprache : if(Serial)
- Sprache : Serial.parseFloat()
- Sprache : Serial.parseInt()
- Sprache : Serial.peek()
- Sprache : Serial.print()
- Sprache : Serial.println()
- Sprache : Serial.read()
- Sprache : Serial.readBytes()
- Sprache : Serial.readBytesUntil()
- Sprache : Serial.readString()
- Sprache : Serial.readStringUntil()
- Sprache : serialEvent()
- Sprache : Serial.write()
※ ARDUINO KAUFEMPFEHLUNG
Arduino UNO R3 | |
Arduino Starter Kit |
Bitte Beachten: Dies sind Partnerschaftslinks. Wenn Sie die Komponenten über diese Links Kaufen, können wir eine Provision erhalten, ohne weitere Kosten für Sie. Wir Schätzen es.