Можно анализировать код, сгенерированный из моделей Simulink® с TargetLink®.
У вас есть меньше возможностей кода, сгенерированного с TargetLink по сравнению с кодом, сгенерированным с Embedded Coder®. Например, вы не можете добавить аннотации в свои блоки, которые переносят на сгенерированный код и выравнивают по ширине известные проблемы.
Сконфигурируйте анализ кода
Выберите Code> Polyspace> Options. Измените значения по умолчанию этих опций в случае необходимости.
Режим продукта: Выберите Bug Finder или Code Prover.
Настройки от (C): Позвольте проверять MISRA® или правил кодирования JSF® в дополнение к проверкам по умолчанию.
'OutputFolder' : Задайте специализированную папку для результатов. Анализ по умолчанию запускает Программу автоматического доказательства Кода на сгенерированном коде и сохраняет результаты в папке
в текущей рабочей папке.results_modelName
Включите дополнительный список файлов: Добавьте файлы C, которые не являются частью сгенерированного кода.
Для полного списка опций, чтобы установить, смотрите Анализ Polyspace в Simulink.
Анализируйте код
Чтобы анализировать код, выберите Code> Polyspace > Verify Code Generated for> Selected Target Link Subsystem. Вы не можете анализировать код, сгенерированный из целой модели.
Можно следовать за прогрессом анализа в командном окне MATLAB®.
Результаты открываются автоматически, если явным образом не отключено. По умолчанию результаты сохранены в папке
в текущей папке. Каждое новое выполнение перезаписывает предыдущие результаты. Можно изменить эти поведения или сохранить результаты в проект Simulink с помощью соответствующих параметров конфигурации.results_ModelName
Верификация 3 000 моделей блока занимает приблизительно один час, чтобы проверить, или приблизительно 15 минут на 2 000 строк сгенерированного кода.
Рассмотрите результат в коде
Результаты появляются на панели Results List. Кликните по каждому результату видеть исходный код и детали о панели Result Details.
Перейдите от кода до модели
Ссылки в комментариях к коду показывают блоки, которые генерируют последующие строки кода. Чтобы видеть блоки в модели, кликните по именам блока.
Устраните проблему
Займитесь расследованиями, связаны ли проблемы в вашем коде с недостатками дизайна в модели.
Например, вы можете должны быть ограничить область значений сигнала от блоков Inport. Смотрите Задают Области значений для Сигналов (Simulink).