RT FIFO読み取り関数
- 更新日2025-01-28
- 4分で読める
RT FIFOの最も古い要素を読み取ります。
RT FIFOにデータがない場合、またRT FIFOが空の場合、この関数はタイムアウト (ms) で指定された時間、新しいデータを待機します。タイムアウト (ms) で指定された時間が経過すると、この関数は出力要素に要素の値を返し、空?にTRUEを返します。

入力/出力
rt fifo
—
rt fifoは、既存のRT FIFOのリファレンスです。
要素
—
要素は、RT FIFOが空の場合のデフォルトの戻り値です。このデータタイプは、配線するデフォルト戻り値のタイプに一致するよう変更されます。
タイムアウト (ms) (0)
—
タイムアウト (ms) は、RT FIFOが空の場合に新規値を受信するまで関数が待機する時間をミリ秒単位で指定します。無限に待機するには、-1をタイムアウト (ms) 入力に配線します。デフォルト値は0で、即座に返されます。
エラー入力 (エラーなし)
—
エラー入力は、このノードを実行する前に発生したエラーの状態を示します。この入力は、標準エラー入力として機能します。
rt fifo出力
—
rt fifo出力は、既存のRT FIFOのリファレンスです。
要素出力
—
出力要素は、RT FIFOから読み取られたデータです。VIが新規データを読み取らなかった場合は、デフォルトの要素を返します。
空?
—
空?は、RT FIFOが空で、読み取る際にタイムアウト (ms) が経過した場合、TRUEになります。
エラー出力
—
エラー出力には、エラー情報が含まれます。この出力は、標準エラー出力として機能します。
要素数
—
要素数は、読み取り/書き込み操作の後にRT FIFOに残っている要素の数を返します。 |
注意 高優先度ループ内で配列データタイプのRT FIFOの要素を読み取るには、この関数の要素入力に適切なサイズとデータタイプの配列を配線する必要があります。要素入力に何も配線しない場合、または配線した配列の要素数がRT FIFOから読み取られる要素数より少ない場合、LabVIEWはメモリを割り当てる必要があります。このメモリの割り当て処理はジッタの原因となるため、高優先度ループでは要素入力に適切なサイズの配列を配線することが重要です。
メモ Real-Time FIFOを使用して波形データを転送すると、波形のバリアント要素は転送されません。これは、バリアントはサイズが可変であり、Real-Time FIFOと互換性がないためです。
サンプルプログラム
LabVIEW Real‐Timeモジュールに含まれている以下のサンプルファイルを参照してください。
- examples\Real-Time Module\RT Communication\RT FIFO\RT FIFO Communication.lvproj
rt fifo
—
要素
—
タイムアウト (ms) (0)
—
エラー入力 (エラーなし)
—
rt fifo出力
—
要素出力
—
空?
—
エラー出力
—
要素数
—