В этом примере показано, как преобразовать проект 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 функция.
fixedPointConverter
команда генерирует скрипт в текущей папке. ex_2ndOrder_filter_script_fixpt.m
содержит команды MATLAB к:
Создайте объект настройки преобразования из плавающей запятой в фиксированную запятую, который имеет те же настройки преобразования фиксированной точки как проект.
Запустите codegen
команда, чтобы преобразовать функцию MATLAB ex_2ndOrder_filter
к функции MATLAB фиксированной точки ex_2ndOrder_filter_fixpt
.
Суффикс в имени файла скрипта является сгенерированным суффиксом имени файла фиксированной точки, заданным файлом проекта. В этом примере суффикс является значением по умолчанию _fixpt
.
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