boolean の特定の整数データ型への置換
製品ハードウェアで使用するプロセッサのアーキテクチャに応じて、生成コードの実行速度を改善できます。組み込み型である boolean 用の特定の整数データ型を選択します。データ型置換を使用すると、生成コードの boolean 組み込みデータ型を次の整数型のいずれかに置き換えることができます。
int8uint8intn
製品ハードウェアの整数ワード サイズに一致させるには、 を n8、16、または 32 に置き換えます。
モデル例
モデル ex_bool には、boolean 値を出力する 2 つのブロックと、boolean 値を入力として受け取る 2 つのブロックが含まれています。この例は、32 ビット ハードウェア ターゲット用に生成されたコードにおいて、どのようにデータ型 boolean が整数データ型 int32 に置き換えられるかを示しています。

既定の boolean データ型を含むコードの生成
生成されたファイル rtwtypes.h を表示します。typedef ステートメントには、boolean_T のジェネリック型定義が含まれており、これは boolean のコード生成名です。
/*===========================================================================* * Generic type definitions: boolean_T, char_T, byte_T, int_T, uint_T, * * real_T, time_T, ulong_T. * *===========================================================================*/ typedef double real_T; typedef double time_T; typedef unsigned char boolean_T; typedef int int_T; typedef unsigned int uint_T; typedef unsigned long ulong_T; typedef char char_T; typedef unsigned char uchar_T; typedef char_T byte_T;
生成されたファイル ex_bool.c を表示します。コードは、boolean_T 型を使用して boolean 変数を宣言します。
/* External inputs (root inport signals with auto storage) */
typedef struct {
real_T In1; /* '<Root>/In1' */
real_T In2; /* '<Root>/In2' */
boolean_T In3; /* '<Root>/In3' */
boolean_T In4; /* '<Root>/In4' */
real_T In5; /* '<Root>/In5' */
} ExtU_ex_bool_T;
/* External outputs (root outports fed by signals with auto storage) */
typedef struct {
boolean_T Out1; /* '<Root>/Out1' */
boolean_T Out2; /* '<Root>/Out2' */
real_T Out3; /* '<Root>/Out3' */
} ExtY_ex_bool_T;ターゲット boolean データ型を含むコードの生成
Simulink.AliasTypeオブジェクトをint32の基本データ型で定義します。生成されたコードに表示する置換名を使用して、オブジェクトに名前を付けます。mybool = Simulink.AliasType; mybool.BaseType = 'int32';[コンフィギュレーション パラメーター] ダイアログ ボックスで、
booleanデータ型の [置換名] フィールドをmyboolとして指定します。
生成されたファイル rtwtypes.h を表示します。コードは、typedef ステートメントを作成することで、識別子 mybool をターゲット ハードウェアのネイティブ整数型にマッピングします。
/* Generic type definitions ... */ ... typedef int boolean_T; ... /* Define Simulink Coder replacement data types. */ typedef boolean_T mybool; /* User defined replacement datatype for boolean_T */
生成されたファイル を表示します。コードは、ex_bool.cmybool 型を使用する boolean 変数を宣言します。
/* External inputs (root inport signals with auto storage) */
typedef struct {
real_T In1; /* '<Root>/In1' */
real_T In2; /* '<Root>/In2' */
mybool In3; /* '<Root>/In3' */
mybool In4; /* '<Root>/In4' */
real_T In5; /* '<Root>/In5' */
} ExtU_ex_bool_T;
/* External outputs (root outports fed by signals with auto storage) */
typedef struct {
mybool Out1; /* '<Root>/Out1' */
mybool Out2; /* '<Root>/Out2' */
real_T Out3; /* '<Root>/Out3' */
} ExtY_ex_bool_T;