Serial.print()

Beschreibung

Druckt Daten an den seriellen Anschluss als von Menschen lesbarer ASCII-Text. Dieser Befehl kann viele Formen annehmen. Zahlen werden für jede Ziffer mit einem ASCII-Zeichen gedruckt. Floats werden in ähnlicher Weise als ASCII-Ziffern gedruckt. Die Standardeinstellung ist zwei Dezimalstellen. Bytes werden als einzelnes Zeichen gesendet. Zeichen und Zeichenfolgen werden unverändert gesendet. Zum Beispiel:

  • Serial.print(78) gibt "78" aus
  • Serial.print(1.23456) gibt "1.23" aus
  • Serial.print('N') gibt "N" aus
  • Serial.print("Hello world.") gibt "Hello world."

Ein optionaler zweiter Parameter gibt die Basis (Format) an, die verwendet werden soll. Zulässige Werte sind BIN(Binär, oder Basis 2), OCT(Oktal, oder Basis 8), DEC(Dezimal, oder Basis 10), HEX(Hexadezimal, oder Basis 16). Bei Gleitkommazahlen gibt dieser Parameter die Anzahl der zu verwendenden Dezimalstellen an. Zum Beispiel:

  • Serial.print(78, BIN) gibt "1001110" aus
  • Serial.print(78, OCT) gibt "116" aus
  • Serial.print(78, DEC) gibt "78" aus
  • Serial.print(78, HEX) gibt "4E" aus
  • Serial.print(1.23456, 0) gibt "1" aus
  • Serial.print(1.23456, 2) gibt "1.23" aus
  • Serial.print(1.23456, 4) gibt "1.2346"

Du kannst Flash-Speicher-basierte Zeichenfolgen an Serial.print() übergeben, indem du Sie mit F() einschließt. Zum Beispiel:

Serial.print(F("Hello World"))

Um Daten ohne Umwandlung in ihre Darstellung als Zeichen zu senden, verwende Serial.write().

Syntax

Serial.print(val)

Serial.print(val, format)

Parameter

  • Serial: Serielles Port-Objekt. Die Liste der verfügbaren seriellen Anschlüsse für jedes Board auf der Serial-Hauptseite.
  • val: Der zu druckende Wert. Erlaubte Datentypen: Beliebiger Datentyp.

Rückgabewert

Gibt die Anzahl der geschriebenen Bytes zurück, das Lesen dieser Anzahl ist jedoch optional. Datentyp: size_t.

Beispielcode

Beispielcode 1

void setup() { Serial.begin(9600); // Öffnet die serielle Schnittstelle bei 9600 Bit/s // prints character Serial.print('A'); Serial.print('R'); Serial.print('D'); Serial.print('U'); Serial.print('I'); Serial.print('N'); Serial.print('O'); Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print('\n'); // Drucken ein neues Zeilenzeichen // Drucken einen Text aus Serial.print("ArduinoGetStarted.com"); Serial.print("\n\n"); // Drucken einen Text aus with two new line characters // prints a floating point number float a = 1.23456; Serial.print(a); // Drucken 2 Dezimalstellen Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print(a, 4); // Drucken 4 Dezimalstellen Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print(a, 5); // Drucken 5 Dezimalstellen Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print(a, 6); // Drucken 6 Dezimalstellen Serial.print("\n\n"); // prints a string with two new line characters int x = 77; // prints an integral number in diffrent format in a table Serial.print("DEFAULT"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print(x); // Drucken eine ASCII-codierte Dezimalzahl aus - wie "DEC" Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print("DEC"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, DEC); // Drucken als ASCII-codierte Dezimalzahl Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print("HEX"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, HEX); // Drucken als ASCII-codierte Hexadezimalzahl Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print("OCT"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, OCT); // Drucken als ASCII-codierte Oktalzahl Serial.print('\n'); // Drucken ein neues Zeilenzeichen Serial.print("BIN"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, BIN); // Drucken als ASCII-codierte Binärzahl } void loop() { }

Das ergebnis am seriellen monitor:

COM6
Send
ARDUINO ArduinoGetStarted.com 1.23 1.2346 1.23456 1.234560 DEFAULT 77 DEC 77 HEX 4D OCT 115 BIN 1001101
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Beispielcode 2

void setup() { Serial.begin(9600); // Öffnet die serielle Schnittstelle bei 9600 Bit/s Serial.print("DEFAULT"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print("DEC"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print("HEX"); // Drucken einen Text aus Serial.print('\t'); Serial.print("OCT"); // Drucken einen Text aus Serial.print('\t'); // Drucken einen Tab aus Serial.print("BIN"); // Drucken einen Text aus Serial.print('\n'); // Drucken ein neues Zeilenzeichen // nur ein Teil des ASCII-Diagramms, ändere es entsprechend for (int x = 0; x <= 16; x++) { // print it out in many formats: Serial.print(x); // Drucken eine ASCII-codierte Dezimalzahl aus - wie "DEC" Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, DEC); // Drucken als ASCII-codierte Dezimalzahl Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, HEX); // Drucken als ASCII-codierte Hexadezimalzahl Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, OCT); // Drucken als ASCII-codierte Oktalzahl Serial.print('\t'); // Drucken einen Tab aus Serial.print(x, BIN); // Drucken als ASCII-codierte Binärzahl Serial.print('\n'); // Drucken ein neues Zeilenzeichen delay(50); // Warte 50 Millisekunden } } void loop() { }

Das ergebnis am seriellen monitor:

COM6
Send
DEFAULT DEC HEX OCT BIN 0 0 0 0 0 1 1 1 1 1 2 2 2 2 10 3 3 3 3 11 4 4 4 4 100 5 5 5 5 101 6 6 6 6 110 7 7 7 7 111 8 8 8 10 1000 9 9 9 11 1001 10 10 A 12 1010 11 11 B 13 1011 12 12 C 14 1100 13 13 D 15 1101 14 14 E 16 1110 15 15 F 17 1111 16 16 10 20 10000
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ Anmerkungen und Warnungen:

  • Informationen zur Asynchronität von Serial.println() findest du im Abschnitt Hinweise und Warnungen von Serial.write().
  • 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

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.

※ UNSERE BOTSCHAFTEN