coder

Откройте приложение MATLAB Coder

Описание

coder открывает MATLAB® Coder™ приложения. Чтобы создать проект, на странице Select Source Files укажите имена файлов точек входа. Приложение создает проект с именем по умолчанию, которое является именем первого файла точки входа. Чтобы открыть существующий проект, на панели инструментов приложения щелкните, а затем нажмите Open existing project.

Если Embedded Coder® продукт установлен, когда приложение создает проект, он включает функции Embedded Coder. Когда функции Embedded Coder включены, генерация кода требует лицензии Embedded Coder. Чтобы отключить функции Embedded Coder, в настройках сборки проекта, на вкладке All Settings, в разделе Advanced, установите Use Embedded Coder features на No.

coder projectname открывает приложение MATLAB Coder с помощью существующего проекта с именем projectname.prj.

пример

coder -open projectname открывает приложение MATLAB Coder с помощью существующего проекта с именем projectname.prj.

пример

coder -build projectname создает существующий проект с именем projectname.prj.

пример

coder -new projectname открывает приложение MATLAB Coder, создающее проект с именем projectname.prj. Если установлен продукт Embedded Coder, приложение создает проект с включенными функциями Embedded Coder. Чтобы отключить эти функции, в настройках сборки проекта, на вкладке All Settings, под Advanced, установите Use Embedded Coder features на No.

coder -ecoder false -new projectname открывает приложение MATLAB Coder, создающее проект с именем projectname.prj. Приложение создает проект с отключенными функциями Embedded Coder, даже если установлен продукт Embedded Coder.

пример

coder -tocode projectname -script scriptname преобразует существующий проект с именем projectname.prj к эквивалентному скрипту команд MATLAB. Скрипт имеет имя scriptname.

  • Если scriptname существует, coder перезаписывает его.

  • Скрипт воспроизводит строение сборки проекта в объекте строения и создает проект. Скрипт:

    • Создает объект строения с именем cfg.

    • Задает переменную ARGS для типов входного параметра функции.

    • Задает переменную GLOBALS для начальных значений глобальных данных.

    • Запускает codegen команда. Когда вы запускаете скрипт, функции точки входа, которые являются аргументами в codegen должен находиться в пути поиска файлов.

  • cfg, ARGS, и GLOBALS появится в базовом рабочем пространстве только после запуска скрипта.

Если проект включает автоматическое преобразование с фиксированной точкой, coder генерирует два скрипта:

  • Скрипт scriptname который содержит команды MATLAB для:

    • Создайте объект строения кода, который имеет те же настройки, что и проект.

    • Запуск codegen команда для преобразования функции MATLAB с фиксированной точкой в функцию C с фиксированной точкой.

  • Скрипт, имя файла которого является конкатенацией имени, заданного scriptname и сгенерированный суффикс имени файла с фиксированной точкой, заданный файлом проекта. Если scriptname задает расширение файла, имя файла скрипта включает расширение файла. Для примера, если scriptname является myscript.m и суффикс является значением по умолчанию _fixpt, имя скрипта myscript_fixpt.m.

    Этот скрипт содержит команды MATLAB для:

    • Создайте объект преобразования из плавающей запятой в фиксированную запятую строения, который имеет те же настройки преобразования с фиксированной точкой, что и проект.

    • Запуск codegen команда для преобразования функции MATLAB с плавающей точкой в функцию MATLAB с фиксированной точкой.

Для проекта, который включает преобразование с фиксированной точкой, перед преобразованием проекта в скрипты, завершите Test Numerics шаг процесса преобразования с фиксированной точкой.

coder -tocode projectname преобразует существующий проект с именем projectname.prj к эквивалентному скрипту команд MATLAB. Он записывает скрипт в Командное окно.

coder -toconfig projectname экспортирует настройки строения кода, хранящиеся в файле проекта MATLAB Coder, в объект строения кода. Выполнение этой команды возвращает объект строения кода, относящийся к projectname. Дополнительные сведения о том, какой объект строения кода возвращается для различных настроек файла проекта, см. в разделе «Совместное использование настроек строения сборки».

пример

cfg = coder('-toconfig','projectname') возвращает объект строения, который содержит настройки строения кода, хранящиеся в файле проекта MATLAB Coder. Выполнение этой команды возвращает объект строения кода cfg соответствующий projectname. Дополнительные сведения о том, какой объект строения кода возвращается для различных настроек файла проекта, см. в разделе «Совместное использование настроек строения сборки».

coder -typeEditor открывает пустое диалоговое окно «Редактор типов кодеров». Если диалоговое окно уже открыто, эта команда выводит его на переднюю часть экрана.

См. «Создание и редактирование входных типов при помощи редактора типов кодеров».

Примеры

свернуть все

Откройте приложение MATLAB Coder, используя существующий проект MATLAB Coder с именем my_coder_project.

coder -open my_coder_project

Создайте проект MATLAB Coder с именем my_coder_project.

coder -build my_coder_project

Откройте приложение MATLAB Coder и создайте проект с именем my_coder_project.

coder -new my_coder_project

Преобразуйте проект MATLAB Coder с именем my_coder_project.prj к скрипту MATLAB с именем myscript.m.

coder -tocode my_coder_project -script my_script.m

Задайте функцию MATLAB, myadd, это возвращает сумму двух значений.

function y = myadd(u,v) %#codegen
y = u + v;
end

Создайте проект MATLAB Coder myadd.prj:

  • Откройте приложение MATLAB Coder myadd как функцию точки входа.

  • На странице Define Inputs Types укажите u и v как двойные скаляры.

  • На странице Generate Code установите Build Type равным MEX. Оставьте другие настройки файла проекта со значениями по умолчанию.

В командной строке MATLAB запустите эту команду:

cfg = coder('-toconfig','myadd.prj');

Генератор кода создает coder.MexCodeConfig cfg объекта который содержит параметры строения кода, хранящиеся в myadd.prj.

Смотрите свойства cfg.

cfg = 

    Description: 'class MexCodeConfig: MEX configuration objects with C code.'
    Name: 'MexCodeConfig'

-------------------------------- Report -------------------------------

                      GenerateReport: true
                        LaunchReport: false
                   ReportInfoVarName: ''
          ReportPotentialDifferences: false

------------------------------- Debugging -----------------------------

                     EchoExpressions: true
                     EnableDebugging: false
                  EnableMexProfiling: false

---------------------------- Code Generation --------------------------

                      ConstantInputs: 'CheckValues'
                           EnableJIT: false
                 FilePartitionMethod: 'MapMFileToCFile'
                         GenCodeOnly: false
    HighlightPotentialRowMajorIssues: true
                  PostCodeGenCommand: ''
             PreserveArrayDimensions: false
                            RowMajor: false
                          TargetLang: 'C'

------------------------ Language And Semantics -----------------------

           CompileTimeRecursionLimit: 50
              ConstantFoldingTimeout: 40000
             DynamicMemoryAllocation: 'Threshold'
    DynamicMemoryAllocationThreshold: 65536
            EnableAutoExtrinsicCalls: true
              EnableRuntimeRecursion: true
                EnableVariableSizing: true
                      ExtrinsicCalls: true
                GlobalDataSyncMethod: 'SyncAlways'
               InitFltsAndDblsToZero: true
               PreserveVariableNames: 'None'
           SaturateOnIntegerOverflow: true

------------------------- C++ Language Features -----------------------

                        CppNamespace: ''

----------------- Safety (disable for faster execution) ---------------

                     IntegrityChecks: true
                ResponsivenessChecks: true

---------------- Function Inlining and Stack Allocation ---------------

                    InlineStackLimit: 4000
                     InlineThreshold: 10
                  InlineThresholdMax: 200
                       StackUsageMax: 200000

----------------------------- Optimizations ---------------------------

                        EnableMemcpy: true
                        EnableOpenMP: true
                     MemcpyThreshold: 64

------------------------------- Comments ------------------------------

                    GenerateComments: true
                MATLABSourceComments: false

------------------------------ Custom Code ----------------------------

                    CustomHeaderCode: ''
                       CustomInclude: ''
                   CustomInitializer: ''
                       CustomLibrary: ''
                        CustomSource: ''
                    CustomSourceCode: ''
                    CustomTerminator: ''
                   ReservedNameArray: ''

Входные параметры

свернуть все

Имя проекта MATLAB Coder, который вы хотите создать, открыть или создать. Имя проекта не должно содержать пространства.

Имя скрипта, который вы хотите создать при использовании -tocode опция со -script опция. Имя скрипта не должно содержать пространств.

Выходные аргументы

свернуть все

Объект строения кода, который содержит настройки строения, хранящиеся в файле проекта MATLAB Coder.

Ограничения

  • coder функция не поддерживается в Online™ MATLAB.

Совет

  • Если вы делитесь лицензией Embedded Coder, используйте coder -ecoder false -new projectname чтобы создать проект, который не требует этой лицензии. Если установлен продукт Embedded Coder, приложение создает проект с отключенными функциями Embedded Coder. Когда эти функции отключены, генерация кода не требует лицензии Embedded Coder. Чтобы включить функции Embedded Coder, в настройках сборки проекта, на вкладке All Settings, в разделе Advanced, установите Use Embedded Coder features на Yes.

  • Создание проекта или открытие существующего проекта приводит к закрытию других проектов MATLAB Coder или Fixed-Point Converter.

  • Если ваша установка не включает продукт Embedded Coder, настройки Embedded Coder не отображаются. Однако значения для этих настроек сохраняются в файле проекта. Если вы открываете проект в установке, включающей продукт Embedded Coder, вы увидите эти настройки.

  • Проект Fixed-Point Converter открывается в приложении Fixed-Point Converter. Чтобы преобразовать проект в проект MATLAB Coder, в приложении Fixed-Point Converter:

    1. Нажмите и выберите Reopen project as.

    2. Выберите MATLAB Coder.

Альтернативы

  • На вкладке Apps, в разделе Code Generation, нажмите MATLAB Coder.

  • Используйте codegen функция для генерации кода в командной строке.

Введенный в R2011a