В этом руководстве показано, как сгенерировать код, который включает:
Подпись функции и текст справки функции в баннере функции.
MATLAB® исходный код как комментарии с тегами трассируемости. В отчете о генерации кода теги трассируемости привязываются к соответствующему исходному коду MATLAB.
Чтобы завершить это руководство, вы должны иметь следующие продукты:
MATLAB
Файлы MATLAB Coder™
Embedded Coder®
Компилятор C
Список поддерживаемых компиляторов см. в разделе Поддерживаемые компиляторы.
В папке с возможностью записи создайте копию обучающего файла.
copyfile(fullfile(docroot, 'toolbox', 'ecoder', 'examples', 'polar2cartesian.m'))
Создайте coder.EmbeddedCodeConfig
объект строения генерации кода и установите эти свойства на true
:
GenerateComments
разрешить комментарии в сгенерированном коде.
MATLABSourceComments
чтобы сгенерировать исходный код MATLAB как комментарии с тегами трассируемости. В отчете генерации кода теги ссылаются на соответствующий код MATLAB. Когда это свойство true
генератор кода также производит сигнатуру функции в баннере функции.
MATLABFcnDesc
чтобы сгенерировать текст справки по функции в баннере функции.
cfg = coder.config('lib', 'ecoder', true); cfg.GenerateComments = true; cfg.MATLABSourceComments = true; cfg.MATLABFcnDesc = true;
Чтобы сгенерировать код С, вызовите codegen
функция. Используйте следующие опции:
-config
для прохождения в объекте строения генерации кода cfg
.
-report
для создания отчета генерации кода.
-args
для определения класса, размера и сложности входных параметров.
codegen -config cfg -report polar2cartesian -args {0, 0}
codegen
генерирует статическую библиотеку на C, polar2cartesian.lib
, и кода С в /codegen/lib/polar2cartesian
подпапка. Поскольку вы выбрали генерацию отчетов, codegen
содержит ссылку на отчет.
Просмотрите сгенерированный код в отчете генерации кода.
Чтобы открыть отчет генерации кода, нажмите View report
.
На панели Generated Code нажмите polar2cartesion.c
.
Сгенерированный код включает в себя:
Подпись функции и текст справки функции в баннере функции.
Комментарии, содержащие исходный код MATLAB, который соответствует сгенерированному коду C/C + +. Комментарий включает тег трассируемости, который соединяется с оригинальным кодом MATLAB.
Сгенерированный функциональный баннер также зависит от файла шаблона генерации кода (CGT). С CGT по умолчанию генератор кода помещает информацию об аргументах в функциональный баннер. Вы можете настроить баннер функции путем изменения CGT. Смотрите Сгенерировать пользовательские файлы и функциональные баннеры для кода C/C + +.
Теги трассируемости предоставляют информацию и ссылки, которые помогают вам отследить сгенерированный код обратно к оригинальному коду MATLAB. Например, щелкните тег трассируемости, который предшествует коду x = r * cos(theta);
.
Откроется отчет polar2cartesian.m
и подсвечивает линию 4.
Чтобы просмотреть исходный код MATLAB и сгенерированный код C/C + + рядом друг с другом и интерактивно проследить между ними, в отчете нажмите Trace Code. Смотрите Интерактивное Отслеживание между Кодом MATLAB и Сгенерированным Кодом C/C + +.