ドキュメンテーション センター

  • 評価版
  • 製品アップデート

目次

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

fgets (serial)

終端子を含む 1 行のテキストをデバイスから読み込む

構文

tline = fgets(obj)
[tline,count] = fgets(obj)
[tline,count,msg] = fgets(obj)

説明

tline = fgets(obj) は、シリアル ポート オブジェクト obj に接続しているデバイスから 1 行のテキストを読み取り、データを tline に返します。返されるデータには、テキスト行と共に終端子も含まれています。終端子を除外するには、fgetl を使用します。

[tline,count] = fgets(obj) は、読み取った値の数 (終端子を含む) を count に返します。

[tline,count,msg] = fgets(obj) は、読み取り操作が失敗した場合、警告メッセージを msg に返します。

シリアル ポート オブジェクト s を作成し、s を Tektronix® TDS 210 オシロスコープに接続してから、関数 fprintf を使用して RS232? コマンドを記述します。RS232? は、スコープにシリアル ポートの通信設定を返すように指示します。

s = serial('COM1');
fopen(s)
fprintf(s,'RS232?')

ReadAsyncMode プロパティの既定値は、continuous であるため、データは自動的に入力バッファーに返されます。

s.BytesAvailable
ans =
    17

関数 fgets を使用すると、以前の書き込み操作で返されたデータ (終端子を含む) を読み取れます。

settings = fgets(s)
settings =
9600;0;0;NONE;LF
length(settings)
ans =
    17

s のスコープへの接続を切断し、メモリとワークスペースから s を削除します。

fclose(s)
delete(s)
clear s

詳細

すべて展開する

ヒント

デバイスからテキストを読み取るには、関数 fopen を使用して obj に接続されている必要があります。接続されたシリアル ポート オブジェクトは、Status プロパティが open になります。obj がデバイスに接続されていない間に、読み込み演算を行うと、エラーが返されます。

msg が出力引数として含まれていない場合に読み取り操作が正常に実行できなかった場合は、コマンド ラインに警告メッセージが返されます。

ValuesReceived プロパティ値は、fgets が実行される度に読み取られた値の数 (終端子を含む) ずつ増加します。

help コマンドを使用して、fgets のヘルプを表示する場合、以下のパス名を指定する必要があります。

help serial/fgets

fgets を使用して読み取り操作を完了するための規則

fgets を使用した読み取り操作では、以下の状態になるまで、MATLAB® コマンド ラインへのアクセスができなくなります。

  • Terminator プロパティにより指定された終端子に到達

  • Timeout プロパティで指定した時間が経過する

  • 入力バッファーが満杯になる

参考

| | | | | | | |

この情報は役に立ちましたか?