MATLAB Function Reference    
fread (serial)

デバイスからバイナリデータを読む

表示

引数

obj
シリアルポートオブジェクト
size
読み取る値の数
'precision'
各値に対して読み取るビット数、そして、ビットは、キャラクタ、整数、浮動小数点値も解釈します。
A
デバイスから戻るバイナリデータ
count
読み込んだ値の数
msg
読み取る操作が、うまく機能しない場合を示すメッセージ

詳細

A = fread(obj,size) は、obj に接続しているデバイスからバイナリデータを読み、データを A に戻します。読み込む値の最大回数は、sizeで設定されます。size に対する正しいオプションは、つぎのものです。

n
列ベクトル内のn 個の値を読みます。
[m,n]
m 行 n 列の行列の中の 個の値を列の順に読みます。

size は、infを設定することはできません。そして、設定した値が、入力バッファにストアできない場合、エラーが生じます。

A = fread(obj,size,'precision') は、precision で設定される精度を使って、バイナリデータを読みます。

precision は、各値に対して、読み込むバイト数をコントロールし、これらのバイト数を整数、浮動小数点数、キャラクタ値として解釈します。precision を指定していない場合、uchar (符号なし 8-ビットキャラクタ)が使われます。デフォルトで、数値は、倍精度配列で戻されます。precision に対して、サポートされている値は、注意に記述されている一覧を参照してください。

[A,count] = fread(...) は、読み込んだ値の数をcountに出力します。

[A,count,msg] = fread(...) は、読み込み操作が失敗した場合に、ワーニングメッセージを msg に戻します。

注意

デバイスからデータを読む前に、関数 fopen を使って、obj に接続する必要があります。接続されたシリアルポートオブジェクトは、Status プロパティ値がopenです。obj がデバイスに接続されていないときに、読み取り操作を行おうとするとエラーが生じます。

msg が、出力引数として含まれてなく、読み取り操作がうまく行かない場合、ワーニングメッセージがコマンドラインに戻ります。

ValuesReceived プロパティ値は、fread が起動する度に、読み込んだ値の数だけ増加します。

help コマンドを使って、fread に対するヘルプを表示する場合、つぎのパス名を与える必要があります。

バイナリ読み取り操作を完了するルール

つぎの事柄が終了するまで、fread を使った読み取り操作は、MATLAB コマンドラインへのアクセスを停止します。

サポートされている精度

precision に対してサポートされている値を、つぎに示します。

データタイプ
精度
解釈
キャラクタ
uchar
8-ビット符号なしキャラクタ
schar
8-ビット符号付きキャラクタ
char
8-ビットの符号付き、または、符号なしキャラクタ
整数
int8
8-ビット整数
int16
16-ビット整数
int32
32-ビット整数
uint8
8-ビット符号なし整数
uint16
16-ビット符号なし整数
uint32
32-ビット符号なし整数
short
16-ビット整数
int
32-ビット整数
long
32- 、または、64-ビット整数
ushort
16-ビット符号なし整数
uint
32-ビット符号なし整数
ulong
32-、または、64-ビット符号なし整数
浮動小数点
single
32-ビット浮動小数点
float32
32-ビット浮動小数点
float
32-ビット浮動小数点
double
64-ビット浮動小数点
float64
64-ビット浮動小数点

参考

関数

fgetl, fgets, fopen, fscanf

プロパティ

BytesAvailable, BytesAvailableAction, InputBufferSize, Status, Terminator, ValuesReceived


 fread freqspace