チャートのアクション言語の変更
Simulink® モデルの Stateflow® チャートには、ステート アクションと遷移アクションの構文を定義するアクション言語プロパティがあります。チャート キャンバスの左下隅にあるアイコンが、チャートのアクション言語を示します。
アクション言語は MATLAB®。
アクション言語は C。
アクション言語間でのチャートの変換
アクション言語間で変換するには、[アクション言語] チャート プロパティを変更します。[チャート] プロパティ ダイアログ ボックスで、新しいアクション言語を選択します。チャートにアクションが含まれている場合は、Stateflow によって、構文パターンを変換するオプションが示されます。
既定のアクション言語の変更
MATLAB は、新しい Stateflow チャートの既定のアクション言語構文です。C をアクション言語として使用するチャートを作成するには、次のように入力します。
sfnew -C新しいチャートの既定のアクション言語を変更するには、関数 sfpref を使用します。たとえば、C を新しいチャートのアクション言語として設定するには次のように入力します。
sfpref(ActionLanguage="C");C から MATLAB への構文変換
既存のアクションがあるチャートのアクション言語を C から MATLAB に変更すると、Stateflow によってチャートの上部に通知が表示されます。その通知の変換リンクをクリックして、サポートされる構文パターンを更新します。
次の C 構造は、Stateflow によって MATLAB 構文に変換されます。
配列のインデックス付け:
A[0][1]がA(1,2)に変わるインクリメント演算:
a++がa = a+1に変わる代入演算:
a += bがa = a+bに変わる剰余演算:
a %% bがrem(a,b)に変わるビット シフト演算:
a >> bがbitshift(a,-b)に変わるビット演算:
a ^ bがbitxor(a,b)に変わる ([C 言語のビット演算が可能] が選択されている場合)コメント:
//と/* */が%に変わる
以下については、手動で更新する必要があります。