Main Content

Idle Task

フリーラン タスクの作成

  • Idle Task block

説明

Idle Task ブロックとそれに接続されたサブシステムは、バックグラウンド タスクとして実行する下流のサブシステムの関数を指定します。Idle Task ブロックを介して実行されるタスクは優先順位が最も低く、基本レート タスクよりも優先順位が下になります。

このブロックは、オペレーティング システムを実行するターゲット コンピューターではサポートされません。

ベクトル化された出力

端子

入力

すべて展開する

Simulink® シミュレーションでの非同期割り込み動作のテスト用にシミュレーションする割り込み (オプション)。

端子の依存関係

この端子を有効にするには、パラメーター [シミュレーション入力を有効にする] を選択します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力

すべて展開する

バックグラウンド タスクを識別する番号とタスクのプリエンプション フラグ。ベクトルとして表されます。タスク識別子ベクトルには、バックグラウンド タスクを識別する番号が格納されます。

プリエンプション フラグ ベクトルには、それぞれのバックグラウンド タスクについて、タスクをプリエンプトできるかどうかを示すフラグが格納されます。プリエンプション フラグ ベクトルの要素が 1 つの場合を除き、プリエンプション フラグ ベクトルの要素数はタスク識別子ベクトルの長さと一致しなければなりません。プリエンプション フラグ ベクトルにタスク識別子ベクトルと同じ数の要素が含まれている場合、タスク識別子ベクトルで表される各タスクのプリエンプション設定は、プリエンプション フラグ ベクトルの対応する要素の値で定義される設定になります。プリエンプション フラグ ベクトルの要素が 1 つの場合は、そのフラグの設定がタスク識別子ベクトル全体に適用されます。

プリエンプトできないタスクについては、そのタスクより優先順位が高いタスクでもプリエンプトできません。

データ型: uint8

パラメーター

すべて展開する

下流のサブシステムにある関数のタスク識別子を 0 ~ 15 の範囲の整数のベクトルとして指定します。ベクトルは下流のサブシステムの関数と同じ数の値を含まなければなりません。たとえば、既定のベクトル [1 2] は下流のサブシステムに 2 つの関数があることを示します。

入力する値の数は、下流のサブシステムにある関数の数に対応します。指定する値で関数の実行順序が決まります。たとえば、ベクトル [2 3 1] は次のことを示します。

  • サブシステムに 3 つの関数がある。

  • 3 番目の関数が最初に実行される。

  • 最初の関数が 2 番目に実行される。

  • 2 番目の関数が 3 番目に実行される。

関数の実行が終了すると、Idle Task ブロックのサイクルが戻り、同じ順序で関数の実行が繰り返されます。

[Task numbers] パラメーターで指定したタスクのプリエンプション フラグを最大 16 個の 1 と 0 のベクトルとして指定します。優先順位が高い割り込みは、それよりも優先順位が低い割り込みをプリエンプトできます。プリエンプションを制御するには、割り込みをプリエンプトできるかどうかをプリエンプション フラグを使用して指定します。

1 は、対応するタスクの割り込みをプリエンプトできることを示します。値 0 は、割り込みをプリエンプトできないことを示します。次のような指定が可能です。

  • [Task numbers] に指定したベクトル全体に適用する 1 つのプリエンプション値。

  • [Task numbers] に指定したベクトルで識別される各タスクのプリエンプション値。[Task numbers] のタスクの順序に対応する順序でフラグの値を指定します。

たとえば、[Task numbers] でベクトル [2 3 1] を指定し、[Preemption flags][0] と指定した場合、タスク 12、および 3 はプリエンプトできません。[Preemption flags][1 1 0] と指定した場合は、タスク 23 はプリエンプトでき、タスク 1 はプリエンプトできません。

このパラメーターは、モデルのシミュレーション用に割り込み入力を受け取る入力端子を作成する場合に選択します。端子を使用してシミュレーションする 1 つ以上の割り込みソースを接続し、Simulink モデルのシミュレーションで非同期割り込み処理の動作をテストします。

バージョン履歴

R2011a で導入