Преобразуйте код MATLAB в код С фиксированной точки

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

Настройте объект настройки фиксированной точки

Создайте настройку фиксированной точки, возражают и конфигурируют имя тестового файла. Например:

fixptcfg = coder.config('fixpt');
fixptcfg.TestBenchName = 'fun_with_matlab_test';

Сконфигурируйте объект настройки фиксированной точки для предложения по типу

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

  • Для предложения по типу с помощью только области значений симуляции, включите набор и создание отчетов данных об области значений симуляции. По умолчанию выведенный анализ области значений отключен.

    fixptcfg.ComputeSimulationRanges = true;
    

  • Для предложения по типу с помощью только выведенные области значений:

    1. Задайте область значений проекта для входных параметров. Например:

      fixptcfg.addDesignRangeSpecification('dti', 'u_in', -1.0, 1.0);
      
    2. Включите выведенный анализ области значений. Отключите набор и создание отчетов данных об области значений симуляции.

      fixptcfg.ComputeDerivedRanges = true;
      fixptcfg.ComputeSimulationRanges = false;
      

Включите тестирование численных данных

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

fixptcfg.TestNumerics = true;

Позвольте строить

Регистрируйте вводы и выводы для графического вывода сравнения. Выберите, чтобы построить использование пользовательской функции или Инспектора Данных моделирования. Например, чтобы построить Инспектора Данных моделирования использования:

fixptcfg.LogIOForComparisonPlotting = true;
fixptcfg.PlotWithSimulationDataInspector = true;

Сконфигурируйте дополнительные свойства объектов настройки фиксированной точки

Сконфигурируйте дополнительные свойства объектов настройки фиксированной точки по мере необходимости. Например, задайте размер слова фиксированной точки по умолчанию:

fixptcfg.DefaultWordLength = 16;

Настройте объект настройки генерации кода C

Создайте объект настройки кода для генерации статической библиотеки C, динамической библиотеки или исполняемого файла. Включите отчет генерации кода. Например:

cfg = coder.config('lib');
cfg.GenerateReport = true;

Сгенерируйте код С фиксированной точки

Используйте функцию codegen, чтобы преобразовать функцию MATLAB с плавающей точкой в код С фиксированной точки. Например:

codegen -float2fixed fixptcfg -config cfg fun_with_matlab

Просмотрите отчет предложения по типу

Щелкните по ссылке к отчету предложения по типу для функции точки входа.

Просмотрите графики сравнения

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

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

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

Просмотрите сгенерированную фиксированную точку код С фиксированной точки и MATLAB

Щелкните по ссылке View Report, которая следует отчету предложения по типу. Чтобы просмотреть фиксированную точку код MATLAB, выберите функцию в панели MATLAB Source. Чтобы просмотреть код С фиксированной точки, выберите файл в панели Generated Code.

Смотрите также

Связанные примеры

Больше о