Arduino Serial.read( )
Der Serial.read( ) in Arduino liest die eingehenden seriellen Daten im Arduino. Der int Hier wird der Datentyp verwendet. Es gibt das erste Datenbyte der ankommenden seriellen Daten zurück. Es gibt auch -1 zurück, wenn auf der seriellen Schnittstelle keine Daten verfügbar sind.
Die bei der Arduino-Programmierung verwendete Syntax ist Serial.read( ),
Wo,
seriell : Es bezeichnet das Objekt der seriellen Schnittstelle.
Wann wurde der erste Computer erfunden?
Die Daten werden in Form von Bytes gespeichert, wobei 1 Byte = 8 Bits.
Lassen Sie es uns anhand eines Beispiels verstehen.
Betrachten Sie den folgenden Code.
int arrivingdatabyte; void setup( ) { Serial.begin(9600); } void loop( ) { if(Serial.available( ) > 0) { arrivingdatabyte = Serial.read( ); // It will read the incoming or arriving data byte Serial.print('data byte received:'); Serial.println(arrivingdatabyte); } }
Der obige Code erklärt deutlich, dass Serial.available() verwendet wird, um die verfügbare Anzahl von Bytes abzurufen, wenn diese größer als 0 ist. Die Funktion Serial.read() liest die Daten aus dem Datenbyte und gibt eine Meldung aus, wenn die Daten vorhanden sind Ist angekommen. Die Daten werden vom seriellen Monitor an den Arduino gesendet.
Serial.readString( )
Es liest die eingehenden seriellen Daten aus dem seriellen Puffer im String. Der Zeichenfolge Hier wird der Datentyp verwendet.
Lassen Sie es uns anhand eines Beispiels verstehen.
Betrachten Sie den folgenden Code.
String b; void setup( ) { Serial.begin(4800); } void loop( ) { while( Serial.available( ) ) { b = Serial.readString( ); Serial.println(b); } }
Der obige Code erklärt deutlich, dass die Serial.readString( ) wird verwendet, um die seriellen Daten in den String einzulesen. Die hier angegebene Zeichenfolge lautet B .
Die Daten in der Serial-Funktion werden im obigen Code als String gelesen.
Wie werden serielle Daten von Serial.readString( ) und Serial.read( ) gelesen?
Die Funktion Serial.read() liest die Daten in Form von Bytes, während Serial.readString() die Daten in Form von Zeichenfolgen liest.
Serial.write( )
Es sendet die Binärdaten an die serielle Schnittstelle in Arduino. Die Daten über Serial.write werden als Reihe von Bytes oder als einzelnes Byte gesendet. Der Datentyp ist size_t .
Die Funktion Serial.write() gibt die Anzahl der geschriebenen Bytes zurück.
Wenn wir die durch die Zeichen dargestellten Ziffern von Zahlen senden möchten, müssen wir die Funktion Serial.print( ) anstelle von Serial.write( ) verwenden.
Serial.write( ) wird in drei Formaten deklariert, die unten gezeigt werden:
- write( str )
- schreiben(Wert)
- write( Puffer, Länge)
Wo,
Seriell : Es bezeichnet das Objekt der seriellen Schnittstelle.
str : Der str bedeutet String, der die Daten als eine Reihe von Bytes sendet.
Puffer : Es handelt sich um ein Array, das zum Senden der Daten als Reihe von Bytes verwendet wird.
Wert : Es sendet die Daten als einzelnes Byte an den Arduino.
nur : Gibt die Anzahl der Bytes an, die vom Array gesendet werden können.
Lassen Sie es uns anhand eines einfachen Beispiels verstehen.
Betrachten Sie den folgenden Code.
void setup( ) { Serial.begin(14400); } void loop( ) { Serial.write(55); // the specified value is 55. // Serial.write( ) send the data as a byte with this value (55). int Bytestosend = Serial.write( ' Arduino' ); // It sends the Arduino string. //The length of the string is a return parameter in this function. }