Serial.peek()

Last revision:2025/06/13

名称

Serial.peek()

説明

シリアル通信用の受信バッファは保持したまま、受信したシリアルデータ(文字)を返す。連続してSerial.peek()を呼ぶと、同じ文字が返る。Serial.peek()の後にSerial.read()を実行しても、同じ文字が返る。

Serial.peek()は、Streamユーティリティクラスを継承している。

書式

Serial.peel()

C言語シグネチャ(avr)

void HardwareSerial::peek(void);

引数

この関数は以下のオブジェクトを受け付ける。

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

戻り値

受信したシリアルデータの最初の1バイト。データがない場合は-1。データ型: int

コード例

以下のコードは、シリアルを通じて入力された最初の値を取得し表示する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
void setup() {
  Serial.begin(9600);
  while (!Serial);

  Serial.println("Type something:");
}

void loop() {
  if (Serial.available()) {
    char nextChar = Serial.peek();  // Look at the next character
    Serial.print("Next character will be: ");
    Serial.println(nextChar);

    char actualChar = Serial.read();  // Now actually consume it
    Serial.print("Read character: ");
    Serial.println(actualChar);
  }
}

参照

オリジナルのページ

https://docs.arduino.cc/language-reference/en/functions/communication/serial/peek/

実装の解析

HardwareSerial.peek()

最終更新日

August 16, 2026

inserted by FC2 system