Этот пример показывает, как преобразовать систему в одинарную точность с помощью Single Precision Converter. Этот пример преобразовывает подсистему модели с двойной точностью к одинарной точности. Чтобы преобразовать подсистему в модели к одинарной точности, окружите подсистему в соответствии с проектом с блоками Преобразования типа данных прежде, чем открыть Single Precision Converter.
Откройте модель. В командной строке войти
addpath(fullfile(docroot,'toolbox','fixpoint','examples')) ex_corner_detection_dbl
Модель использует комбинацию булевых, и встроенных целочисленных типов данных с двойной точностью.
Откройте Single Precision Converter. Из меню Simulink® Analysis выберите Data Type Design> Single Precision Converter.
Под System Under Design выберите систему или подсистему, чтобы преобразовать в одинарную точность. В данном примере выберите подсистему Corner Detector
. Нажмите Convert to Single.
Конвертер сначала проверяет систему на совместимость с преобразованием и изменяет любые образцовые настройки, которые несовместимы. Стандартная математическая библиотека модели должна быть установлена в C99 (ISO), и модель должна использовать решатель фиксированного шага.
Конвертер преобразовывает систему и перечисляет все конвертированные типы данных. Конвертер изменяет только типы данных с двойной точностью. Это не преобразовывает булевскую переменную, фиксированную точку или встроенные целочисленные типы к одинарной точности.
Когда система в соответствии с проектом содержит Функциональный блок MATLAB®, конвертер создает различную подсистему, содержащую сгенерированную версию с одинарной точностью блока MATLAB function и исходного блока MATLAB function.
В заключительном этапе преобразования Конвертер проверяет, что преобразование было успешно путем обновления модели.
Возвратитесь к модели и обновите схему. Блоки в Угловой подсистеме Детектора больше не используют типы данных с двойной точностью.