В этом примере показано, как преобразовать MATLAB® Coder™ проект к скриптам MATLAB, когда проект включает автоматическое преобразование с фиксированной точкой. Можно использовать -tocode опция coder команда для создания пары скриптов для преобразования с фиксированной точкой и генерации кода с фиксированной точкой. Можно использовать скрипты, чтобы повторить рабочий процесс проекта в рабочем процессе командной строки. Перед преобразованием проекта в скрипты необходимо выполнить Test шаг процесса преобразования с фиксированной точкой.
Запустите скрипт, который генерирует Код С с фиксированной точкой
Запустите скрипт, который генерирует код MATLAB с фиксированной точкой
В этом примере используются следующие файлы:
Проектирование файла ex_2ndOrder_filter.prj
Файл точки входа ex_2ndOrder_filter.m
Тестируйте файл стенда ex_2ndOrder_filter_test.m
Сгенерированный файл MATLAB с фиксированной точкой ex_2ndOrder_filter_fixpt.m
Чтобы получить эти файлы, завершите пример Предложить типы данных с фиксированной точкой на основе областей значений симуляции, включая следующие шаги:
Завершите Test шаг процесса преобразования с фиксированной точкой.
Сконфигурируйте проект, чтобы создать статическую библиотеку C/C + +.
Измените папку, содержащую файл проекта ex_2ndOrder_filter.prj.
Используйте -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 с фиксированной точкой.
The fixedPointConverter команда генерирует скрипт в текущей папке. ex_2ndOrder_filter_script_fixpt.m содержит команды MATLAB для:
Создайте объект преобразования из плавающей запятой в фиксированную запятую строения, который имеет те же настройки преобразования с фиксированной точкой, что и проект.
Запуск codegen команда для преобразования функции MATLAB ex_2ndOrder_filter функции MATLAB с фиксированной точкой ex_2ndOrder_filter_fixpt.
Суффикс в имени файла скрипта является сгенерированным суффиксом имени файла с фиксированной точкой, заданным файлом проекта. В этом примере суффикс является значением по умолчанию _fixpt.
The coder команда перезаписывает существующие файлы, имена которых совпадают с именами сгенерированных скриптов. Если вы опускаете -script опция, coder команда записывает скрипты в Командное окно.
Чтобы запустить скрипт, который генерирует код С с фиксированной точкой из кода MATLAB с фиксированной точкой, должна быть доступна функция MATLAB с фиксированной точкой, заданная в скрипте.
Убедитесь, что функция MATLAB с фиксированной точкой ex_2ndOrder_filter_fixpt.m находится в пути поиска файлов.
addpath c:\coder\ex_2ndOrder_filter\codegen\ex_2ndOrder_filter\fixptЗапустите скрипт:
ex_2ndOrder_filter_script
Генератор кода создает статическую библиотеку на C с именем ex_2ndOrder_filter_fixpt в папке codegen\lib\ex_2ndOrder_filter_fixpt. Переменные cfg и ARGS появится в базовом рабочем пространстве.
Если у вас нет функции MATLAB с фиксированной точкой или если вы хотите ее регенерировать, используйте скрипт, который генерирует функцию MATLAB с фиксированной точкой из функции MATLAB с плавающей точкой.
Убедитесь, что текущая папка содержит функцию точки входа ex_2ndOrder_filter.m и файл испытательного стенда ex_2ndOrder_filter_test.m.
Запустите скрипт.
ex_2ndOrder_filter_script_fixpt
Генератор кода создает ex_2ndOrder_filter_fixpt.m в папке codegen\ex_2ndOrder_filter\fixpt. Переменные cfg и ARGS появится в базовом рабочем пространстве.
codegen | coder | coder.FixPtConfig