Serial.availableForWrite()

Last revision:2025/06/13

名称

Serial.availableForWrite()

説明

シリアルポートに書き込み可能なバイト数(文字数)を取得する。この際、書込み操作をブロックすることはない。

書式

出力用シリアルバッファ内の利用可能なバイト数を取得するには、以下の関数を使う。

Serial.availableForWrite()

C言語シグネチャ(avr)

int HardwareSerial::availableForWrite(void);

引数

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

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

戻り値

書き込み可能なバイト数。

コード例

以下のコードは、出力用シリアルバッファに十分なスペースがあるか調べる。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
void setup() {
  Serial.begin(9600); // Start serial communication at 9600 baud
  while (!Serial);    // Wait for serial port to be ready 
}

void loop() {
  int bytesAvailable = Serial.availableForWrite(); // Check how many bytes we can write

  Serial.print("Bytes available to write: ");
  Serial.println(bytesAvailable);

  if (bytesAvailable > 13) {
    Serial.println("Hello, world!"); // Send a message only if enough buffer space is available
  }

  delay(1000); // Wait a second before checking again
}

注意

ソフトウェア実装のUARTを利用している場合は、この関数は0を返す。HardwareSerialで利用可能なバイト数だけを返す。

参照

オリジナルのページ

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

実装の解析

HardwareSerial::availableForWrite()

最終更新日

August 16, 2026

inserted by FC2 system