Filter löschen
Filter löschen

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

5 Ansichten (letzte 30 Tage)
Chika Kishi
Chika Kishi am 23 Mai 2018
Beantwortet: Akihiro Yasuda am 2 Jul. 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;

Antworten (1)

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

Kategorien

Mehr zu モデル化 finden Sie in Help Center und File Exchange

Produkte


Version

R2015a

Community Treasure Hunt

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

Start Hunting!