Serial.print()

名称

Serial.print()

説明

シリアルポートにASCIIテキストとして可読文字を表示する。この関数には多くの呼び出し形式がある。数値はそれぞれの数字をASCII文字を使って表示される。浮動小数点は同様に数字をASCII文字を使って、デフォルトでは小数点以下第2位まで表示する。バイトは数値をASCII文字に変換して送信される。文字や文字列はそのまま送信される。

  • Serial.print(78) は “78”
  • Serial.print(1.23456) は “1.23”
  • Serial.print(‘N’) は “N”
  • Serial.print(“Hello world.”) は “Hello world.”

オプションの第2引数は、底や形式を指定する。BIN(2進表記)、OCT(8進表記)、DEC(10進表記)、HEX(16進表記)が指定可能である。浮動小数点に対しては、この引数は、小数点以下第何位までを表示するかを指定する。

  • Serial.print(78, BIN) は “1001110”
  • Serial.print(78, OCT) は “116”
  • Serial.print(78, DEC) は “78”
  • Serial.print(78, HEX) は “4E”
  • Serial.print(1.23456, 0) は “1”
  • Serial.print(1.23456, 2) は “1.23”
  • Serial.print(1.23456, 4) は “1.2346”

F()を使って、フラッシュメモリ上の文字列をSerial.print()に送ることもできる。例えば、以下のように使う。

Serial.print(F(“Hello World”));

文字の表現を変えずに送信する場合は、Serial.write()を使うこと。

書式

メソッド定義(Printクラスを継承)size_t Print::print(const String &s);
size_t Print::print(const char str[]);
size_t Print::print(char c);
size_t Print::print(unsigned char b, int base);
size_t Print::print(int n, int base);
size_t Print::print(unsigned int n, int base);
size_t Print::print(long n, int base);
size_t Print::print(unsigned long n, int base);
size_t Print::print(double n, int digits);
size_t Print::println(const __FlashStringHelper *ifsh);
size_t Print::print(const Printable& x);
利用方法Serial.print(val);
Serial.print(val, format);

引数

s, str, c, b, n, ifsh, x表示する値
base底(省略時はDEC)
digits小数点以下の表示桁数(省略時は2)
Serialシリアルポートオブジェクト。
val表示する値。
format表示する値が整数型の場合は底、浮動小数型の場合は小数点以下の表示桁数。

各ボードで利用可能なシリアルポートオブジェクトは、Serialを参照。

戻り値

書き込んだバイト数。戻り値の利用はオプション。

使用例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/*
  Uses a for loop to print numbers in various formats.
*/
void setup() {
  Serial.begin(9600); // open the serial port at 9600 bps:
}

void loop() {
  // print labels
  Serial.print("NO FORMAT");  // prints a label
  Serial.print("\t");         // prints a tab

  Serial.print("DEC");
  Serial.print("\t");

  Serial.print("HEX");
  Serial.print("\t");

  Serial.print("OCT");
  Serial.print("\t");

  Serial.print("BIN");
  Serial.println();        // carriage return after the last label

  for (int x = 0; x < 64; x++) { // only part of the ASCII chart, change to suit
    // print it out in many formats:
    Serial.print(x);       // print as an ASCII-encoded decimal - same as "DEC"
    Serial.print("\t\t");  // prints two tabs to accomodate the label lenght

    Serial.print(x, DEC);  // print as an ASCII-encoded decimal
    Serial.print("\t");    // prints a tab

    Serial.print(x, HEX);  // print as an ASCII-encoded hexadecimal
    Serial.print("\t");    // prints a tab

    Serial.print(x, OCT);  // print as an ASCII-encoded octal
    Serial.print("\t");    // prints a tab

    Serial.println(x, BIN);  // print as an ASCII-encoded binary
    // then adds the carriage return with "println"
    delay(200);            // delay 200 milliseconds
  }
  Serial.println();        // prints another carriage return
}

注意

Serial.print()の非同期性に関する情報は、Serial.write()の注意を参照。

参照

言語 begin()

言語 end()

言語 available()

言語 read()

言語 peek()

言語 flush()

言語 println()

言語 write()

言語 serialEvent()

言語 Memory

オリジナルのページ

https://www.arduino.cc/reference/en/language/functions/communication/serial/print/

Last Revision: 2022/03/27

実装の解析

まだ解析していません。

最終更新日

January 4, 2024

inserted by FC2 system