exponenta event banner

Преобразование проекта преобразования с фиксированной точкой в сценарии MATLAB

В этом примере показано, как преобразовать проект MATLAB ® Coder™ в сценарии MATLAB, если проект включает автоматическое преобразование с фиксированной точкой. Вы можете использовать -tocode вариант coder для создания пары сценариев для преобразования с фиксированной точкой и создания кода с фиксированной точкой. Сценарии можно использовать для повторения рабочего процесса проекта в рабочем процессе командной строки. Перед преобразованием проекта в сценарии необходимо выполнить этап тестирования процесса преобразования с фиксированной точкой.

Предпосылки

В этом примере используются следующие файлы:

  • Файл проекта ex_2ndOrder_filter.prj

  • Файл точки входа ex_2ndOrder_filter.m

  • Файл испытательного стенда ex_2ndOrder_filter_test.m

  • Созданный файл MATLAB с фиксированной точкой ex_2ndOrder_filter_fixpt.m

Чтобы получить эти файлы, выполните пример «Предложить типы данных с фиксированной точкой на основе диапазонов моделирования», включая следующие шаги:

  1. Выполните этап Test процесса преобразования с фиксированной точкой.

  2. Настройте проект для создания статической библиотеки C/C + +.

Создание сценариев

  1. Изменение папки, содержащей файл проекта ex_2ndOrder_filter.prj.

  2. Используйте -tocode вариант coder для преобразования проекта в сценарии. Используйте -script для указания имени файла для сценариев.

    coder -tocode ex_2ndOrder_filter -script ex_2ndOrder_filter_script.m

    coder создает два сценария в текущей папке:

    ex_2ndOrder_filter_script.m содержит команды MATLAB для:

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

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

    fixedPointConverter создает сценарий в текущей папке. ex_2ndOrder_filter_script_fixpt.m содержит команды MATLAB для:

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

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

      Суффикс в имени файла сценария - это созданный суффикс имени файла с фиксированной точкой, заданный файлом проекта. В этом примере суффикс является значением по умолчанию _fixpt.

    coder перезаписывает существующие файлы, имена которых совпадают с именами созданных сценариев. Если опустить -script опция, coder записывает сценарии в окно команд.

Выполнить сценарий, генерирующий код С с фиксированной точкой

Для запуска сценария, который генерирует код С с фиксированной точкой из кода MATLAB с фиксированной точкой, должна быть доступна функция MATLAB с фиксированной точкой, указанная в сценарии.

  1. Убедитесь, что функция MATLAB с фиксированной точкой ex_2ndOrder_filter_fixpt.m находится в пути поиска.

     addpath c:\coder\ex_2ndOrder_filter\codegen\ex_2ndOrder_filter\fixpt

  2. Запустите сценарий:

     ex_2ndOrder_filter_script

    Генератор кода создает статическую библиотеку C с именем ex_2ndOrder_filter_fixpt в папке codegen\lib\ex_2ndOrder_filter_fixpt. Переменные cfg и ARGS отображаются в базовом рабочем пространстве.

Выполнить сценарий, генерирующий код MATLAB с фиксированной точкой

Если функция MATLAB с фиксированной точкой отсутствует или требуется ее регенерация, используйте сценарий, который создает функцию MATLAB с фиксированной точкой из функции MATLAB с плавающей точкой.

  1. Убедитесь, что текущая папка содержит функцию точки входа ex_2ndOrder_filter.m и файл тестового стенда ex_2ndOrder_filter_test.m.

  2. Запустите сценарий.

     ex_2ndOrder_filter_script_fixpt

    Генератор кода создает ex_2ndOrder_filter_fixpt.m в папке codegen\ex_2ndOrder_filter\fixpt. Переменные cfg и ARGS отображаются в базовом рабочем пространстве.

См. также

| |

Связанные темы