Анализ сред программирования для МК

Программирование микроконтроллеров является неотъемлемой частью разработки самостоятельного электронного устройства. На данном этапе развития электроники, наиболее популярными микроконтроллерами (МК) есть: PIC, MSP, AVR, STM, ARM (процессор).

Для каждого вида МК есть узконаправленная среда программирования. Это связано с внутренней структурой МК и технического обеспечения записи программы в память МК. Если проанализировать существующие среды программирования МК, то найти универсальные среды программирования МК очень сложно. При анализе сред программирования было выявлено только одну универсальную среду программирования микроконтроллеров – FlowCode, функции которой позволяют программировать МК PIC, AVR, ARM.

FlowCode – графическая универсальная среда программирования МК. Программирование осуществляется благодаря построению логической структуры, т.е. блок-схем, аналогично среде HiAsm. Функция экспорта позволяет экспортировать написаний код PIC МК в программу AVR МК и наоборот.  Дополнением данной среды программирование является создание HEX-кода, который может быть использовать при прошивки МК, или при проектировании схемы с поддержкой МК, например, в среде Proteus.

Большинство проанализированных сред программирования МК были предназначены для AVR. Среда Algorithm Builder – это графическая среда программирования МК AVR. Тип графической разработки в данной среде, отличается от FlowCode. Як говорит автор программы, написание кода осуществляется в 3-5 раз быстрее. Среда русифицирована и поддерживает автоматическое перекодирование строк в ANSI-кода Windows в код русифицированного буквенно-цифрового ЖКИ. Среда программирования объединяет в себе графический редактор, компилятор алгоритма, симулятор микроконтроллера, внутрисхемный программатор, функции работы с EEPROM.

Среди платных сред программирования AVR МК есть AVR Studio, IAR Systems, Image Craft, WinAVR, CodeVisionAVR.

CodeVisionAVR–популярная условно-бесплатная среда программирования AVR МК. Объединяет в себе Си-подобный язык программирования и ассемблер. Функции программы позволяют самостоятельно прошивать МК и устанавливать fuse-бити и ПЗУ.Конечным результатом разработки программы под. МК есть создание HEX, BIN или ROM-файла, для прошивки МК с помощью программатора.

Среда IAR Systems поддерживает программирования МК AVR и MSP430, но функции программирования двух МК не объединены в одной среде. Для каждого МК были разработаны отдельные среды программирования. Аналогичным образом была разработана среда программирования Image Craft (ICC). ICC поддерживает Си-подобный синтаксис и ассемблер. IAR Systems и Image Craft в их состав входит целенаправленные библиотеки по работе с отдельными частями МК. В состав ICC добавлена утилита для генерации кода и инициализации периферии МК, внедрен ANSI Terminal Emulator, который предоставляет возможность работать с COM-портом.

Среда Code Composer Studio (CCS) для программирования МК MSP основана на базе стоковой универсальной среды программирования  Eclipse. CCS как вышеперечисленные среды программирования, имеет Си-подобный язык программирования. Данная среда программирования поддерживает разработку для DSP (Digital signal processor) микроконтроллеров, процессоров АРМ семейства TMS320 и MSP430. Данная среда в сравнении с ICC или CCS использует Java-машину и требует больше системных ресурсов.

Energiaсреда программирования для МК MSP430, которая наиболее популярной средой программирования среди начинающих. Имеет Си-подобный язык программирования, но он отличается от языков, которые используются в вышеперечисленных средах. Язык Energia (и Arduino IDE) более понятный, подобный английским словам. Energia поддерживает дополнительные библиотеки, в состав которых входят драйвера для подключение платформы LaunchPad MSP430 на базе ARM Cortex, FraunchPad и lm4f120 StallerPad. Данная среда программирования является модифицированной версией среды Arduino IDE. Работает c 1, 16МГц МК MSP430 и 80 МГц lm4f120. Внедрена функция просмотра COM-порта.

Virtual breadboard – середа разработки с поддержкой проектирования электрической схемы на базе платформы Arduino под управлением МК ATMEL AVR. При анализе использовалась программа версии 4.2.9, которая поддерживает разработку программ под. МК PIC. Синтаксис подобный среде программирования Energia и Arduino IDE. Данная среда является платной, в программу внедрены примеры, и модели электронных элементов на основе которых проектируется устройство.

Для разработки программ под МК PIC существует среда MPLAB IDE. Создание программы проходит в структурированном виде, встроенный программный симулятор моделирования исполнения программ в МК с учетом состояния портов ввода-вывода, эмулятор работы МК в масштабе реального времени непосредственно в устройстве пользователя. Разработка проекта ведется на языке С или ассемблер. Еще одной средой программирования для МК PIC является mikгоС. Среда mikгоС включает в себя библиотеки, которые поддерживают следующие устройства и интерфейсы:

  • встроенный аналого-цифровой перекодировщик (АЦП) микроконтроллера;
  • встроенную энергонезависимую память EEPROM микроконтроллера;
  • встроенные широтно-импульсные модуляторы (PWM) микроконтроллера;
  • внешние сменные карты памяти типа MMC, SD и Compact Flash;
  • файловую систему FAT;
  • алфавитно-цифровой жидкокристаллические индикаторы (LCD PKI);
  • графические жидкокристаллические индикаторы (GLCD, РК-дисплей);
  • интерфейсы I2C, SPI, 1-Wire, USART, RS-485, CAN, PS / 2, USB (HID) и Ethernet.

Подведя итоги, хочу сказать, что при выборе среды программирования необходимо учитывать ее основной функциональный состав, язык программирования, поддерживаемые порты и интерфейсы.

Если Вы используете другую среду программирования МК, которая в данном посте не указана, пожалуйста, напишите. Указанная вами среда будет проанализирована и добавлена в пост.