Включите комментарии в сгенерированный код C/C + +

Об этом руководстве

Цели обучения

В этом руководстве показано, как сгенерировать код, который включает:

  • Подпись функции и текст справки функции в баннере функции.

  • MATLAB® исходный код как комментарии с тегами трассируемости. В отчете о генерации кода теги трассируемости привязываются к соответствующему исходному коду MATLAB.

Необходимые условия

Чтобы завершить это руководство, вы должны иметь следующие продукты:

  • MATLAB

  • Файлы MATLAB Coder™

  • Embedded Coder®

  • Компилятор C

Список поддерживаемых компиляторов см. в разделе Поддерживаемые компиляторы.

Создание исходного файла MATLAB

В папке с возможностью записи создайте копию обучающего файла.

copyfile(fullfile(docroot, 'toolbox', 'ecoder', 'examples', 'polar2cartesian.m'))

 polar2cartesian

Конфигурирование параметров сборки

Создайте 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 содержит ссылку на отчет.

Просмотр сгенерированного кода C

Просмотрите сгенерированный код в отчете генерации кода.

  1. Чтобы открыть отчет генерации кода, нажмите View report.

  2. На панели Generated Code нажмите polar2cartesion.c.

    Сгенерированный код включает в себя:

    • Подпись функции и текст справки функции в баннере функции.

    • Комментарии, содержащие исходный код MATLAB, который соответствует сгенерированному коду C/C + +. Комментарий включает тег трассируемости, который соединяется с оригинальным кодом MATLAB.

Сгенерированный функциональный баннер также зависит от файла шаблона генерации кода (CGT). С CGT по умолчанию генератор кода помещает информацию об аргументах в функциональный баннер. Вы можете настроить баннер функции путем изменения CGT. Смотрите Сгенерировать пользовательские файлы и функциональные баннеры для кода C/C + +.

Трассировка сгенерированного кода к коду MATLAB

Теги трассируемости предоставляют информацию и ссылки, которые помогают вам отследить сгенерированный код обратно к оригинальному коду MATLAB. Например, щелкните тег трассируемости, который предшествует коду x = r * cos(theta);.

Откроется отчет polar2cartesian.m и подсвечивает линию 4.

Чтобы просмотреть исходный код MATLAB и сгенерированный код C/C + + рядом друг с другом и интерактивно проследить между ними, в отчете нажмите Trace Code. Смотрите Интерактивное Отслеживание между Кодом MATLAB и Сгенерированным Кодом C/C + +.

Похожие темы