割込み対策処理のモデル設計について

11 visualizaciones (últimos 30 días)
Chika Kishi
Chika Kishi el 23 de Mayo de 2018
Respondida: Akihiro Yasuda el 2 de Jul. de 2018
一時格納用変数から複数個のデータをグローバル変数へ同時に格納するためにフラグを設けて、割込みを防止するような処理をSimulinkモデルで実現する方法はありますか? (Cコードで書くと以下のような処理です。)
/* 一時格納用変数へ格納 */
  local_val1 = sample1;
local_val2 = sample2;
local_val3 = sample3;
  /* フラグOFF: OFFの間は割込み不可 */
  FLAG = 0;
  /* グローバル変数へ格納 */
  Global1 = local_val1;
Global2 = local_val2;
Global3 = local_val3;
/* フラグON: すべての変数格納が終了した時点でフラグをONとし、割込みを許可する */
  FLAG = 1;

Respuestas (1)

Akihiro Yasuda
Akihiro Yasuda el 2 de Jul. de 2018
下記図および添付ファイルのように、Function Caller経由でコピー処理をし、
その前後にAtomic Subsystemブロックを挿入し、
そのブロック内で割り込みフラグを設定するのはどうでしょうか?
上記以外ですと、外部コードとして作成し、それを参照する方法があると思います。
モデル内にブロックとして組み込む場合は、 ブロックの作成が参考になると思います。
カスタムストレージクラスImportFromFileを使用して生成コード時のみ反映する といった方法があると思います。

Categorías

Más información sobre モデル化 en Help Center y File Exchange.

Productos


Versión

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!