Main Content

instrfind

(削除予定) メモリから MATLAB ワークスペースにシリアル ポート オブジェクトを読み取る

このオブジェクト関数 serial は将来のリリースで削除される予定です。代わりにオブジェクト関数 serialport を使用してください。コードの更新の詳細については、互換性についての考慮事項を参照してください。

構文

out = instrfind
out = instrfind('PropertyName',PropertyValue,...)
out = instrfind(S)
out = instrfind(obj,'PropertyName',PropertyValue,...)

説明

out = instrfind はすべての正しいシリアル ポート オブジェクトを配列として out に返します。

out = instrfind('PropertyName',PropertyValue,...) はプロパティ名とプロパティ値が指定されたものと一致するシリアル ポート オブジェクトの配列を返します。

out = instrfind(S) はプロパティ名とプロパティ値が構造体 S で定義されたものと一致するシリアル ポート オブジェクトの配列を返します。S のフィールド名はプロパティ名で、フィールド値は関連したプロパティ値です。

out = instrfind(obj,'PropertyName',PropertyValue,...) はプロパティの名前と値のペアの一致の検索を obj でリストされているシリアル ポート オブジェクトに制限します。

Windows® プラットフォームで次の 2 個のシリアル ポート オブジェクトを作成するとします。

s1 = serial('COM1');
s2 = serial('COM2');
set(s2,'BaudRate',4800)
fopen([s1 s2])

関数 instrfind を使って、プロパティ値に基づいてシリアル ポート オブジェクトを返します。

out1 = instrfind('Port','COM1');
out2 = instrfind({'Port','BaudRate'},{'COM2',4800});

関数 instrfind を使用すると、クリアされたシリアル ポート オブジェクトを MATLAB® ワークスペースに返すこともできます。

clear s1 s2
newobjs = instrfind
   Instrument Object Array
   Index:   Type:          Status:     Name:  
   1        serial         open        Serial-COM1
   2        serial         open        Serial-COM2

s1s2 の両方を閉じるには、以下のようにします。

fclose(newobjs)

ヒント

関数 get が返すものと同じ形式を使って、プロパティ値を指定しなければなりません。たとえば関数 getName プロパティ値を MyObject として返す場合、関数 instrfindmyobjectName プロパティ値をもつオブジェクトを検出しません。しかし、文字列値の有限の集合をもつプロパティに対して、大文字と小文字の区別を行いません。たとえば関数 instrfindEven または evenParity プロパティ値をもつオブジェクトを検出します。

関数 instrfind への呼び出しについて、プロパティ名/値、構造体、cell 配列を同じように使用できます。

バージョン履歴

R2006a より前に導入

すべて折りたたむ

R2021a: serial オブジェクト インターフェイスは削除予定

この関数の serial オブジェクトでの使用は削除される予定です。シリアル ポート デバイスにアクセスするには、代わりに serialport オブジェクトと、その関数およびプロパティを使用してください。

推奨される機能には追加の性能があり、パフォーマンスも改善されています。推奨される機能の使用の詳細については、serialport インターフェイスへのコードの遷移を参照してください。