Если ваша модель сконфигурирована для генерации кода AUTOSAR, можно пользоваться заменяющей библиотекой кода, чтобы произвести функции, которые практически ориентированы на стандарт AUTOSAR.
Заменяющая библиотека AUTOSAR 4.0 кода позволяет вам настроить генератор кода, чтобы произвести код С, который практически ориентирован на стандарт AUTOSAR. Рассмотрите использование заменяющей библиотеки кода если:
Вы хотите использовать служебные программы, предоставленные в библиотеке.
У вас есть заменяющий код для служебных программ.
Заменяющий код следует соглашению о присвоении имен файла AUTOSAR, то есть, стандартные программы для любой данной спецификации находятся в одном заголовочном файле (например, Mfl.h
или Mfx.h
)
У вас есть настройка обвязки сборки, которая может скомпилировать и соединить библиотеку AUTOSAR со сгенерированным кодом. Для получения дополнительной информации о строительных нормах и правилах для AUTOSAR, смотрите Генерацию кода.
Примечание
Индексация интерполяционной таблицы MATLAB® и Simulink® отличается от индексации MAP AUTOSAR. MATLAB проявляет подход линейной алгебры — строка (u1
) и столбец (u2
). AUTOSAR (и ASAM) проявляет подход Декартовой координаты — ось X (u2
) и ось Y (u1
), где u1
и u2
входные параметры с блоками двумерной интерполяционной таблицы Simulink. Из-за различия, заменяющее программное обеспечение кода транспонирует входные параметры для стандартных программ MAP AUTOSAR.
Для получения дополнительной информации о замене кода и заменяющих библиотеках кода, смотрите то, Что Замена Кода? (Embedded Coder) и Заменяющие Библиотеки Кода (Embedded Coder).
Чтобы исследовать библиотечные подпрограммы AUTOSAR, поддержанные заменяющей библиотекой кода AUTOSAR, используйте Code Replacement Viewer (Embedded Coder). Чтобы открыть средство просмотра, в командной строке, входят crviewer
.
Для получения дополнительной информации смотрите, Выбирают Code Replacement Library (Embedded Coder).
Чтобы сконфигурировать генератор кода для вашей модели, чтобы пользоваться заменяющей библиотекой кода AUTOSAR, откройте диалоговое окно Configuration Parameters. Выберите Code Generation> Interface> Code replacement library> AUTOSAR 4.0.
Для получения дополнительной информации о замене кода и заменяющих библиотеках кода, смотрите то, Что Замена Кода? (Embedded Coder) и Заменяющие Библиотеки Кода (Embedded Coder).
Замена кода требует, чтобы комбинация типов для входа, точки останова, таблицы и выходных типов была совместима со спецификацией AUTOSAR. С плавающей точкой (IFL) замена только поддерживает один типы, в то время как фиксированная точка (IFX) замена поддерживает uint8, uint16, int8, int16 и сопоставленные фиксированные точки. При использовании этих стандартных блоков требования комбинации типа варьируются и осуществляются как требуется.
То В этом примере показано, как заменить код, сгенерировало для блоков интерполяционной таблицы Simulink с функциями, которые совместимы с интерполяцией с плавающей точкой AUTOSAR (IFL) библиотечные подпрограммы. Если вы хотите заменить код на интерполяцию фиксированной точки (IFX) библиотечные подпрограммы, можно изменить тип и реконфигурировать блок.
Создайте свою модель Simulink при помощи любого из этих блоков интерполяционной таблицы AUTOSAR: Prelookup, Curve Using Prelookup, Map Using Prelookup, Curve, or Map.
Например:
Сконфигурируйте генератор кода для своей модели, чтобы пользоваться заменяющей библиотекой кода. В диалоговом окне Configuration Parameters выберите Code Generation> Interface> Code replacement library> AUTOSAR 4.0. В качестве альтернативы из командной строки или программно, использовать set_param
установить CodeReplacementLibrary
параметр к 'AUTOSAR 4.0'
.
Опционально, можно сконфигурировать модель для генератора кода, чтобы представить отчет генерации кода, который подводит итог, какие блоки инициировали замены кода. В диалоговом окне Configuration Parameters, в Code Generation> панель Report, выбирают опцию Summarize which blocks triggered code replacements. В качестве альтернативы из командной строки или программно, использовать set_param
установить GenerateCodeReplacementReport
параметр к 'on'
.
Создайте модель и рассмотрите сгенерированный код для ожидаемых замен кода.
Например: