9. Инструментальные средства для проектирования
Интеграция ядер ARM7 и ARM9 в стандартные микроконтроллеры привела к настоящему взрыву в предложениях инструментальных средств для этих ЦПУ. Выпуск инструментальных средств для ARM микроконтроллеров осуществляют все ведущие разработчики компиляторов, в т.ч. GCC, Greenhills, Keil, IAR и Tasking. С появлением процессора Cortex к данным инструментальным средствам была добавлена поддержка набора инструкций Thumb-2. Поэтому, если вы уже используете любые другие ARM-микроконтроллеры, то у вас есть хорошие шансы сгенерировать код программы для МК STM32 с помощью имеющихся инструментальных средств. В худшем случае может потребоваться обращение к поставщику используемых инструментальных средств с запросом обновлений.
В случае, если вы впервые используете в своем проекте ARM-микроконтроллер, появляется возможность выбора инструментальных средств от наиболее предпочтительного для вас производителя. Но, поскольку в наши дни очень трудно найти плохие инструментальные средства, далее перейдем к обсуждению двух компиляторов. Первый компилятор "GCC" или "GNU". Он представляет собой инструментальное средство с открытым исходным кодом, поэтому, распространяется и используется бесплатно. Компилятор GCC, в целях снижения стоимости средств для проектирования и оценочных наборов, встраивается во многие коммерческие интегрированные среды для проектирования и отладчики. Несмотря на то, GCC компилятор является надежным и стабильным компилятором, наш опыт говорит о том, что генерируемый им код не столь эффективен, как при использовании коммерческих компиляторов. Кроме того, в случае возникновения проблем с его использованием, не к кому обратится за технической поддержкой, что может замедлить проектирование. Среди коммерческих компиляторов можно выделить ARM RealView, разработанный компанией ARM для использования с ее ЦПУ. Компилятор RealView доступен как часть набора инструментальных средств ARM RealView. Этот набор ориентирован на разработчиков систем на кристалле и не совсем подходит для микроконтроллерных проектов. Тем не менее, начиная с января 2006 года компилятор RealView интегрируется в состав микроконтроллерного набора для проектирования компании Keil (MDK-ARM). Из наименования MDK-ARM следует, что данный набор разработан специально для работы с ARM-микроконтроллерами. Набор MDK прост в использовании (весь проект можно сконфигурировать выбором около 4 опций) и представляет собой цепочку тесно-взаимосвязанных инструментов от одного производителя.
Если вы обосновываете выбор использования компилятора GCC или коммерческого компилятора, в первую очередь необходимо руководствоваться бюджетом проекта. Бюджет простого проекта вряд ли позволит оправдать приобретение коммерческих инструментальных средств. Однако, если вы планируете массово использовать ARM-микроконтроллеры, то затраты на дорогостоящие инструментальные средства окупятся за счет ускорения проектирования и за счет генерации более компактного кода программы. При выборе компилятора также необходимо руководствоваться уровнем своей квалификации. Если вы опытный разработчик, то, скорее всего, разработка целого проекта с использованием компилятора GCC вам окажется под силу. Однако, при недостаточных навыках, в т.ч. программирования на Си, могут возникнуть серьезные проблемы.
|