基底ファイルによるカスタマイズ
PROJECT、MODULE、MOD、MOD_PAR、および MOD_COMMON 設定などのカスタム A2L ファイル フラグメントを ASAP2 ファイルに追加できます。そのためには、次の方法を実行します。
基底クラスによる ASAP2 フィールドのカスタマイズ
coder.asap2.UserCustomizeBase関数を使用して、基底クラスからオブジェクトを作成します。obj = coder.asap2.UserCustomizeBase;
オブジェクト フィールドを定義します。
obj.HeaderComment = 'Header comment'; obj.ModParComment = 'Mod Par comment'; obj.ModCommonComment = 'Mod Common comment'; obj.ASAP2FileName = 'File_name'; obj.ByteOrder = 'BYTEORDER MSB_LAST';
オブジェクトを関数に渡し、ASAP2 ファイルを生成します。
coder.asap2.export(
modelName,CustomizationObject=obj);
基底クラスからの派生による ASAP2 セクションのカスタマイズ
基底クラス
coder.asap2.UserCustomizeBaseから派生させます。派生ファイルは MATLAB パス上の任意の場所に配置できます。Header セクションを編集するには、
writeHeader関数を使用します。writeHardwareInterface関数を使用して、ASAP2 ファイルのMOD_PARフィールドとMOD_COMMONフィールドから構成されるハードウェア インターフェイス セクションを編集します。ASAP2 ファイルの先頭にテキストを追加するには、
writeFileHead関数を使用します。ASAP2 ファイルの末尾にテキストを追加するには、
writeFileTail関数を使用します。たとえば、派生クラス
TestASAP2Customizationを生成するコードは次のようになります。classdef TestASAP2Customization < coder.asap2.UserCustomizeBase % Customization class for asap2 file methods function header = writeHeader(obj) header = sprintf([' /begin HEADER ' 'test Header text' '\n',... 'header test comments from user\n',... ' /end HEADER']); end function hardwareInterface = writeHardwareInterface(obj) hardwareInterface = sprintf([' /begin MOD_PAR "' 'UserDefined' '"\n',... ' test comments from user\n',... ' /end MOD_PAR\n\n',... ' /begin MOD_COMMON "' 'UserDefined MOD_COMMON' '"\n',... ' user defined values for MOD_COMMON\n',... ' ' obj.ByteOrder '\n',... ' /end MOD_COMMON']); end function fileTail = writeFileTail(obj) fileTail = sprintf(['/* This File can be used for ' ,... 'calibration .*/\n'... '/* EOF ',obj.ASAP2FileName, '*/']); end function fileHeader = writeFileHead(obj) fileHeader = sprintf(['/******************************************\n',... ' This is an a2l file which can be used for calibration ,... with INCA or CANAPE\n',... ' ************************************************************/' ]); end end end
派生クラスからオブジェクトを作成します。たとえば、次のコマンドは
TestASAP2Customizationからオブジェクトを作成します。obj = TestASAP2Customization;
ASAP2 ファイルを生成する関数にオブジェクトを渡します。
coder.asap2.export(
modelName,CustomizationObject=obj);
参考
coder.asap2.export | coder.asap2.UserCustomizeBase (Embedded Coder)