В этом примере показано, как сгенерировать код С фиксированной точки из кода MATLAB® с плавающей точкой с помощью программируемого рабочего процесса.
Сконфигурируйте объект настройки фиксированной точки для предложения по типу
Сконфигурируйте дополнительные свойства объектов настройки фиксированной точки
Просмотрите сгенерированную фиксированную точку код С фиксированной точки и MATLAB
Создайте настройку фиксированной точки, возражают и конфигурируют имя тестового файла. Например:
fixptcfg = coder.config('fixpt'); fixptcfg.TestBenchName = 'fun_with_matlab_test';
Программное обеспечение преобразования фиксированной точки может предложить типы на основе областей значений симуляции, выведенных областей значений или обоих.
Для предложения по типу с помощью только области значений симуляции, включите набор и создание отчетов данных об области значений симуляции. По умолчанию выведенный анализ области значений отключен.
fixptcfg.ComputeSimulationRanges = true;
Для предложения по типу с помощью только выведенные области значений:
Укажите диапазон проекта для входных параметров. Например:
fixptcfg.addDesignRangeSpecification('dti', 'u_in', -1.0, 1.0);
Включите выведенный анализ области значений. Отключите набор и создание отчетов данных об области значений симуляции.
fixptcfg.ComputeDerivedRanges = true; fixptcfg.ComputeSimulationRanges = false;
Выберите, чтобы запустить тестовый файл, чтобы проверить сгенерированную фиксированную точку код MATLAB.
fixptcfg.TestNumerics = true;
Регистрируйте вводы и выводы для графического вывода сравнения. Выберите, чтобы построить использование пользовательской функции или Инспектора Данных моделирования. Например, чтобы построить Инспектора Данных моделирования использования:
fixptcfg.LogIOForComparisonPlotting = true; fixptcfg.PlotWithSimulationDataInspector = true;
Сконфигурируйте дополнительные свойства объектов настройки фиксированной точки по мере необходимости. Например, задайте размер слова фиксированной точки по умолчанию:
fixptcfg.DefaultWordLength = 16;
Создайте объект настройки кода для генерации статической библиотеки C, динамической библиотеки или исполняемого файла. Включите отчет генерации кода. Например:
cfg = coder.config('lib');
cfg.GenerateReport = true;
Используйте codegen
функционируйте, чтобы преобразовать функцию MATLAB с плавающей точкой в код С фиксированной точки. Например:
codegen -float2fixed fixptcfg -config cfg fun_with_matlab
Щелкните по ссылке к отчету предложения по типу для функции точки входа.
Если вы выбрали, чтобы регистрировать вводы и выводы для графиков сравнения, процесс преобразования генерирует графики сравнения.
Если вы выбрали, чтобы использовать Инспектора Данных моделирования в этих графиках, Инспектор Данных моделирования открывается. Используйте Инспектора Данных моделирования, чтобы просмотреть и сравнить информацию о запуске и фиксированной точки с плавающей точкой.
Если вы выбрали, чтобы использовать пользовательскую функцию построения графика в этих графиках, процесс преобразования использует пользовательскую функцию, чтобы сгенерировать графики.
Щелкните по ссылке View Report, которая следует отчету предложения по типу. Чтобы просмотреть фиксированную точку код MATLAB, выберите функцию в панели MATLAB Source. Чтобы просмотреть код С фиксированной точки, выберите файл в панели Generated Code.