Настройка сгенерированного ASAP2 файла

Вы можете настроить сгенерированный файл ASAP2 с помощью генератора кода одним из следующих способов:

Настройка ASAP2 полей при помощи базового класса

  1. Создайте объект из базового класса.

    obj = coder.asap2.UserCustomizeBase;

  2. Измените поля объекта.

    obj.HeaderComment = 'Header comment';
    obj.ModParComment = 'Mod Par comment';
    obj.ModCommonComment = 'Mod Common comment';
    obj.ASAP2FileName = 'File name';
    obj.ByteOrder = 'BYTEORDER MSB_LAST';

  3. Передайте объект в функцию, которая генерирует файл ASAP2.

    coder.asap2.export(modelName,'CustomizationObject',obj);

Настройка ASAP2 разделов путем деривации из базового класса

  1. Производные от базового класса coder.asap2.UserCustomizeBase. Вы можете разместить производный файл в любом месте на пути MATLAB.

  2. Для редактирования раздела Заголовок используйте writeHeader функция.

  3. Используйте writeHardwareInterface функция для редактирования раздела аппаратного интерфейса, состоящего из MOD_PAR и MOD_COMMON поля файла ASAP2.

  4. Чтобы добавить текст в начале файла ASAP2, используйте writeFileHead функция.

  5. Чтобы добавить текст в конец файла 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 a a2l file which can be used for calibration with INCA or CANAPE\n',...
                    ' ******************************************************************************/'
                    ]);
            end
        end
    end

  6. Создайте объект из производного класса. Например, следующая команда создает объект из TestASAP2Customization:

    obj = TestASAP2Customization;

  7. Передайте объект в функцию, которая генерирует файл ASAP2.

    coder.asap2.export(modelName,'CustomizationObject',obj);

См. также

Похожие темы