Главная arrow Программирование arrow ARM arrow IAR EWB for ARM 5.50: настройка оптимизации модулей проекта Sunday, October 22 2017  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:

IAR EWB for ARM 5.50: настройка оптимизации модулей проекта Версия для печати
Написал microsin   
22.02.2011

В IAR Embedded Workbench IDE есть возможность выборочно управлять оптимизацией отдельных модулей, что позволяет значительно повысить эффективность всего кода в целом, и упрощает отладку.

Для удобной отладки по исходному коду оптимизацию обычно отключают. Это позволяет качественно просматривать значение локальных переменных программы, точно выполнять пошаговое выполнение программы по исходному коду. Для отладки создается конфигурация Debug, где оптимизация выключена, а для готовой рабочей программы деалется конфигурация Release, где оптимизация включена. Не секрет, что большой проект обычно содержит довольно много ошибок и неточностей, которые не позволяют сразу включить оптимизацию для всего проекта целиком (т. е. нельзя сразу применить конфигурацию Debug). Например, в конфигурации Debug программа работает, а в конфигурации Release, где включена оптимизация - появляются глюки и программа становится нерабочей.

Обычно проект состоит из большого количества модулей, которые находятся в разной степени готовности. Например, некоторые подпрограммы использовались довольно давно и хорошо отлажены (например, подпрограммы графики, низкоуровневый вывод на экран ЖКИ), а другие - только пишутся, и должны активно отлаживаться. Подпрограммы, которые давно отлажены, отлаживать пока нет необходимости, и для них можно отдельно включить оптимизацию, что значительно ускорит работу программы, либо позволит сэкономить на памяти (в зависимости от того, какая оптимизация используется). Оптимизация для отдельного модуля может быть настроена через контекстное меню модуля Options..., поставить галочку Override inherited settings, раздел C/C++ Compiler -> Optimizations -> Level, можно выбирать Balanced, Size, Speed.

IAR-optimizations01.png

IAR-optimizations02.png

Кроме того, на закладке Code можно выбрать тип генерируемого кода Arm или Thumb, что влияет на размер кода и его быстродействие.

IAR-optimizations03.png

После настройки индивидуальных опций для модуля в окошке дерева модулей проекта (View -> Workspace) напротив него появляется черная галочка.

IAR-optimizations04.png

Можно назначить отдельные настройки для целого раздела проекта - группы модулей, если они размещены в отдельной папке браузера проекта. Здесь имеется в виду не папка файловой системы, а папка проекта, которая отражает его логическую структуру (например, модули работы с графикой могут лежать в отдельной папке GUIfunctions дерева проекта IAR).

Последнее обновление ( 22.02.2011 )
 

Добавить комментарий

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2017