Главная » Программирование » PIC — микроконтроллеры » Установка IDE MPLAB X и компиляторов XC8, XC16, XC32
Установка IDE MPLAB X и компиляторов XC8, XC16, XC32
Цикл статей – PIC начинающим или основы основ
PIC — как много в этом слове… для пиковода
У человека, желающего стать пиководом, имеются абсолютно те же вопросы, что и у будущих AVR-водов, STM-вцев и т.п. А именно с чего начать и куда бежать? Под катом вы узнаете основные средства для старта с микроконтроллерами семейства PIC. Начнем с самого простого — займемся основами основ в виде установки среды разработки для ведения проектов под микроконтроллеры PIC.
Напомню, что данная статься пишется в апреле 2014г. Сейчас компания Microchip в качестве среды разработки продвигает MPLAB X IDE, актуальная версия 2.05. Скачав и установив MPLAB X, можно вести проекты и составлять (писать) программы для PIC-микроконтроллеров на ассемблере.
Микроконтроллеры PIC для начинающих. Практика #1
Язык Ассемблер
Язык ассемблер (assembler) — машинно-ориентированный язык низкого уровня с командами, обычно соответствующими командам машины, который может обеспечить дополнительные возможности вроде макрокоманд; автокод, расширенный конструкциями языков программирования высокого уровня, такими как выражения, макрокоманды, средства обеспечения модульности программ. В отличие от Си, команды ассемблера зависят от применяемого микроконтроллера. Команды описаны в документации на микроконтроллер.
Скажу сразу — ассемблер не является моим любимым языком. Только Си, ибо современные микроконтроллеры доступны, дешевы, сильны. И я не вижу причин экономить что-то, кроме времени разработки.
Язык Си — язык высокого уровня, «абстрагированный от железа». На Си написано множество библиотек и микропрограмм. Позволяет писать процессор-независимые программы. Перед преобразованием в машинные коды, Си преобразуется в ассемблер… не всегда лучшим образом. Поэтому, при наличии опыта и знаний, поставленную задачу на ассемблере удается решить более «красиво», нежели на си, но только ценой времени.
Тем не менее — приступим к делу. Самый первый этап в PICостроении — поход на сайт http://www.microchip.com/ и скачивание следующих пунктов:
Что нужно закачать
А именно MPLAB X IDE со справкой и компиляторы XC8, XC16, XC32. MPLAB X бесплатен. Компиляторы XC имеют бесплатный и платный режимы. Бесплатный режим отличается от платного отсутствием оптимизации.
MPLAB X IDE создана на основе NetBeans IDE, что будет видно на скриншотах ниже. Так как NetBeans построен на Java и требует ее для нормальной работы, то и MPLAB X IDE имеет те же требования. С одной стороны MPLAB X IDE теперь мультиплатформенная, с другой, приложения под Java никогда не считались венцом экономии ресурсов. Да-да, готовьте мощную машинку для комфортной работы.
Учимся писать прошивки.
Все закачали, прочитали инструкции, полазили по сайту — пора устанавливать ПО.
Доступно для скачивания описание на русском языке в виде презентации для MPLAB X, в котором рассказывается об основных возможностях программы.
4.2 MiB
1762 Downloads
Детали
Требования: | PDF Reader |
Категория: | PIC |
Лицензия: | Freeware |
Дата: | 20.05.2014 |
Установка MPLAB X
Обновление версии!
На данный момент имеет смысл устанавливать MPLAB X IDE версии 3.xx, т.к. новые версии имеют несколько новых фишек и удобств.
И вообще — пользуйтесь новым! =)
Вначале все стандартно. Приветствие, далее… Лицензионное соглашение. Далее…
Путь установки. Тут имеется рекомендация устанавливать не по умолчанию в Programm, а например, в свою папку без пробелов в пути.
Далее… Далее…
Тут IDE споткнулась при установке драйверов. УСТАНАВЛИВАЕМ несмотря ни на что!
Далее… Если флажок установлен — после установки прогуляетесь на сайт Микрочип :). Финиш.
После удачной установки на рабочем столе появляются три иконки: Нас больше всего интересует первая, все остальные — фигня не достойная занимать место на рабочем столе. Запускаем MPLAB X, смотрим, закрываем.
Наступил черед устанавливать компиляторы. Как известно, Микрочип выпускает микроконтроллеры восьмибитные, шеснадцатибитные, тридцатидвухбитные. И компиляторы для них XC8, XC16, XC32 соответственно. Напоминаю, в начале этой статьи все необходимое уже скачали.
Установка XC8
Запускаем актуальную версию компилятора, для меня это xc8-v1.31-win.exe.
Далее… Соглашаемся с лицензией.
Смотрим на галочки и далее…
Далее… Рекомендую устанавливать в подпапку с MPLAB X IDE, каждую версию — в свою подпапку. Компиляторов для каждого из семейств микроконтроллеров PIC может быть несколько, они выбираются в свойствах проекта.
Ставим нужные галочки и далее…
Apply setting to all users of this machine — Установить для всех пользователей ПК.
Add xc8 to the PATH environment variable — Внести XC8 в переменную окружения.
Переменные окружения
Посмотреть переменную окружения можно кликнув правой кнопкой мыши по ярлыку Компьютер -> Дополнительные параметры системы -> на вкладке Дополнительно Переменные среды. Смотри переменную «path».
После установки у нас будет тяжкий выбор: использовать бесплатную версию, версию с ограничением на 60 дней или платную версию. Для установки бесплатной версии просто жмем кнопку Next >.
О бесплатной XC
Как я уже писал выше, бесплатная версия отличается от платной только отсутствием оптимизации. Хотя, на интернет-форумах неоднократно встречал претензии к бесплатным версиям компиляторов семейства XC — вроде как бесплатные искусственно тормозят программу. Впрочем, на крупном русскоязычном ресурсе всякого такого лежат все необходимые лекарства =) .
Вот и все — можно устанавливать XC16 и XC32, а XC8 уже установлена.
Установка XC16 и XC32
Установка компиляторов XC16 и XC32 по сути ничем не отличается от установки XC8.
Выбрали папку и далее…
Опять выбрали папку, далее…
Вот и все. Наш ПК готов к написанию первой программы для PIC.
Вопросы и комментарии приветствуются
Источник: pro-diod.ru
Идеальная среда разработки для PIC — личный опыт
2014-09-05 в 7:07, admin , рубрики: cc18, eclipse, gputils, makefile, mikroc, pic, sdcc, Программирование, программирование микроконтроллеров
В связи с нововведениями на сайте, решил наконец-то вылезти из подполья и написать что-нибудь полезное. Ну а поскольку я программирую разные микроконтроллеры (МК) и являюсь фанатом Eclipse, то решил про это и написать. Начну со своей истории знакомства с программированием PIC, а закончу советами тем, кто по долгу службы или в силу увлечения программирует на МК семейства PIC, хотя, впрочем, эти же советы сгодятся и для других архитектур МК.
В среду железячников я попал в 2006 году на 4-м курсе учёбы в университете, когда пошёл на производственную практику в научно-технический центр, где, собственно, и работаю по сей день. В то время в нашей компании мейнстримом было использование Keil uVision2 для МК на базе C51 и ARM. Однако мне подсовывали простые задачи под PIC, вроде контроля и управления одним сигналом (кнопка вкл-выкл), и моей первой средой разработки были блокноты — бумажный и компьютерный, плюс книжки бумажные по PIC. Выглядела моя среда разработки примерно так:
Для компиляции файлов мне выдали экзешник компилятора и bat-файл, который использовался мной совершенно бездумно — даже не знаю, что за компилятор там был. В общем, суровые были времена…
Ах, если бы мне кто-то тогда подсказал, что есть такое чудо, как notepad++!
Потом был MPASM, но он убогий и мне про него почти нечего вспоминать. По-моему, под него я также писал в блокноте программки.
MPLAB IDE
По мере совершенствования своих навыков я узнал, что вместо блокнота можно использовать наикрутейшую, как мне тогда казалось, MPLAB IDE:
В её состав входят:
- CC18 и ещё какой-то компилятор, которые можно выбирать в настройках проекта;
- хороший набор библиотечных функций;
- подключаемые inc-файлы описания МК семейства PIC, заточенные под использование в ассемблере;
- встроенный отладчик и программатор;
- Но главное — поддержка языка Си — это был для меня глоток свежего воздуха!
Хотя, если присмотреться к этой среде разработки, её убогость и отсталость могут отпугнуть любого мало-мальски привыкшего к хорошим условиям программиста, но я тогда об этом не знал. Справку по встроенным библиотечным функциям надо открывать отдельно и искать, что, где и как называется. Для новичков — непосильная задача. Тем не менее, на тематических форумах люди до сих пор спрашивают, какой компилятор лучше использовать; кто-то так и продолжает использовать MPLAB IDE.
MikroC
Задачи для PIC мне подкидывали всё реже и реже, начали набирать обороты разработки с МК серии C51, ARM7 (не путать с ARMv7!), Cortex-M. Но иногда ко мне снова обращались за помощью в написании программ под PIC, а я в силу любопытства пробовал новые средства разработки.
К тому времени уже давно и активно программировал в Keil uVision3 — возвращаться к допотопному MBLAB IDE совершенно не хотелось. Так я познакомился с MikroC, который поставляется вместе с программаторами PICKit:
Набор плюшек почти такой же как в MBLAB IDE, но всё же побогаче:
- свой собственный компилятор
- встроенные библиотеки функций с удобным поиском и доступным описанием;
- подключаемые h-файлы описания МК семейства PIC;
- набор дополнительных внешних утилит
- широкий спектр примеров с исходниками
- встроенный отладчик и программатор;
- встроенные вкладки открытых файлов;
- навигация по функциям в файле
Честно, для маленьких простых проектов, которые и составляют основную нишу программ под PIC, этого вполне достаточно. Даже новички нормально разбираются с помощью справки и быстро делают рабочий код. Большинство наших разработчиков, имеющих дело с PIC, используют эту среду при разработке.
Так или иначе, сделав очередной проект в MikroC, я благополучно забыл про PIC’и и думал, что уже никогда к ним не вернусь.
Однако история любит повторяться!
Через 3 года, в 2013 году, появилась задача разработать ПО по готовой КД, в которой был заложен PIC18F4680. Честно, я даже не знал, что среди PIC’ов бывают такие монстры, всегда имел дело только с мелочью!
Задачи были нетривиальные — реализация загрузчика для внутрисхемного обновления ПО, работа в режиме жёсткого реального времени, работа с АЦП, внешними ЦАП, линиями управления, несколькими таймерами-компараторами.
Кстати, немного отвлекаясь от темы: только на этом проекте я в полной мере понял, что такое банки памяти в PIC, как они работают и какие ограничения накладывают на разработку ПО. К примеру, все банки у МК по 256 байт. И хоть убейся, но для PIC нельзя создать структуру, превыщающую по объёму эти 256 байт — ограничение всплыло наружу при реализации протокола обмена, ну да ладно, проехали…
К этому времени Keil uVision3 мне уже изрядно поднадоел, поскольку сложность проектов росла и мне не хватало имевшегося в Keil функционала. Где-то с 2011 года я освоил Eclipse, GCC, синтаксис makefile — и все свои проекты начал вести с использованием этих инструментов. К тому же, у меня уже был опыт применения связки Eclipse + SDCC для реализации проекта под C51 МК. После появления Keil uVision4 я его установил, протестировал пол-часика и снёс, ибо по удобству программирования он всё равно сильно отстаёт от Eclipse.
Eclipse + SDCC
В настоящее время Eclipse де-факто является стандартом в области разработки ПО для встраиваемых систем. Вот список IDE, основанных на Eclipse, от популярных брендов:
- NXP LPCXpresso IDE
- Freescale CodeWarrior
- Xilinx Platform Studio
- Texas Instruments CCS
- Android Development Tools
Автоподстановка, всплывающие подсказки по автодополнению, макросы, затемнение неактивных участков кода, удобная навигация по коду и многое-многое другое, — я не буду всё перечислять, — многие разработчики встраиваемых систем совершенно не привыкли и не знают всех этих плюшек, значительно облегчающих жизнь:
Главной проблемой чистого Eclipse для разработки на C/C++ под МК является сложность вхождения в него железячных программистов, замена привычных инструментов, работающих после установки в 1-2 клика, на какие-то плагины, требующие настройки, или, что ещё хуже, на вручную написанные makefile — всё это требует значительных первоначальных усилий по чтению и изучению документации, поиску помощи и пособий для начинающих в интернете. Говорю как человек, имеющий опыт по переводу команды программистов-железячников на Eclipse.
Только для моей команды разработчиков
Коли прочитали эту статью — дайте знать, я хоть узнаю, как у нас читают профильные хабы на Хабрахабре
Однако, за месяц полностью освоив синтаксис и один раз написав качественный makefile, все остальные проекты создаются по накатанному шаблону и требуют лишь минимальной индивидуальной настройки.
Также пришлось сделать ряд дополнительных телодвижений по настройке проектов под PIC — по умолчанию Eclipse понимает синтаксис GCC. Различные макросы и директивы, встроенные в другие компиляторы (будь то СС18 или SDCC), приходится разделять на этапе компиляции и на этапе индексации проекта. Чтобы при навигации в коде редактор не выдавал ложных ошибок на неизвестные директивы, к исходникам проекта подключается файл eclipse-syntax.h:
eclipse-syntax.h
#ifndef ECLIPSE_SYNTAX_H_ #define ECLIPSE_SYNTAX_H_ // keyword SDCC defined when compiling with SDCC compiler #ifndef SDCC #ifdef __SDCC_PIC18F4680 #error «SDCC not found, project compile will be with errors!» #endif // file not parsed through makefile — just for proper eclipse syntax #ifndef __CC18__ #error «__CC18__ not found, use `-D__CC18__` in makefile for proper CC18 compilation!» #define near #define far #define rom #define ram #define _asm #define _endasm #define Nop() #define ClrWdt() #define Sleep() #define Reset() #define clrwdt #define nop #define __code #define __data #define __xdata #define __sfr #define __sbit #define __naked #define __wparam #define __bit char #define __at(num) #else // __CC18__ defined — compile stage! #endif // __CC18__ #define __inline #define __asm #define __endasm #define __interrupt(x) #define INTERRUPT(x) #define USING(x) #define CRITICAL #define CRITICAL_START #define CRITICAL_END #define _REENTRANT #else // if SDCC defined #define INTERRUPT(x) __shadowregs __interrupt (x) //#define USING(x) __using (x) #define USING(x) #define CRITICAL __critical #define CRITICAL_START __critical < #define CRITICAL_END >#endif // SDCC defined #endif /* ECLIPSE_SYNTAX_H_ */
Кроме того, в SDCC у меня не получилось слинковать большой проект в готовый бинарник — потребовалось также настроить GPUtils , в состав которого входят gpasm, gpdasm, gplink и скрипты .lkr карт памяти МК PIC. Правда, из-за одного найденного мной бага в SDCC на этапе отладки кода я в итоге вернулся на CC18 компилятор и линковщик. Тем не менее, SDCC и GPUtils были полностью настроены — для страждущих привожу часть makefile, касающуюся опций запускаемых компиляторов и линковщиков CC18, SDCC, GPUtils:
Кусочки makefile
Эпилог
Как видно, в итоге я пришёл к использованию связки Eclipse с внешними компиляторами. Изучение опций компиляции — дело нужное и не столь сложное, чтобы просто так от него отказываться — любой программист сможет их изучить и применить при необходимости. Думаю, в итоге у меня получилась идеальная связка, доступная на сегодняшний день для создания проектов под PIC.
Собирая воедино все средства разработки, вот список компиляторов, которыми я пользуюсь в связке с Eclipse и получаю от этого истинное удовольствие при программировании:
- CC18 для PIC
- SDCC для C51
- gnu-arm-embedded для ARM7 и Cortex-M
- MinGW для x86
Очевидно, при необходимости список может легко дополняться.
Надеюсь, прочитав мою историю, кто-то решится наконец для себя сойти со старых IDE и освоить новые.
Источник: www.pvsm.ru
Урок 3. Установка MPLAB и PICC
Итак, мы уже получили общее представление о микроконтроллерах в предыдущих уроках. Для дальнейшего изучения программирования микроконтроллеров нам понадобятся различные инструменты. В этом уроке мы рассмотрим установку следующих инструментов:
- Интегрированная среда разработки MPLAB;
- Компилятор PICC;
Нет желания писать прошивку для микроконтроллера? А может нет времени на изучение основ программирования микроконтроллера? А может нужно срочно выполнять дипломную работу, в которую входит написание программы для микроконтроллера? Какими бы не были причины, мы можем помочь Вам запрограммировать Ваше устройство. Если Вам нужна наша помощь, сделайте заказ, заполнив форму.
MPLAB IDE – это свободная интегрированная среда разработки приложений для микроконтроллеров PIC и dsPIC фирмы Microchip. Она включает в себя огромный набор необходимых инструментов. MPLAB IDE представляет собой 32-разрядное приложение для ОС Windows, проста в использовании и включает в себя множество бесплатных программных компонентов для быстрой разработки приложений и отладки.
Сначала необходимо скачать актуальную на сегодняшний день версию MPLAB IDE 8. Скачать ее всегда можно на сайте microchip.com.
После скачивания у Вас должен появиться архив вроде MPLAB_IDE_8_85.zip, который необходимо распаковать, и запустить файл setup.exe
Должно появиться окно:
Нажимаем кнопку Next.
Выбираемпункт“I accept the terms of the license agreement” инажимаемкнопку Next.
Выбираем пункт “Custom” и нажимаем кнопку Next.
Здесь необходимо указать путь, куда нужно установить программу. Выбрать путь можно нажав кнопку Browse… Рекомендую оставить путь по умолчанию, т.е. C:ProgramFilesMicrochip. После выбора пути нажимаем кнопку Next.
В этом окне нужно выбрать компоненты, которые будут установлены. Оставляем все по умолчанию, кроме MPLAB C32 Suite. MPLAB C32 Suite занимает много места на диске и нам он в данном курсе не понадобится. При желании его можно будет установить потом. Нажимаем кнопку Next.
Нажимаем Next.
Аналогично – жмем Next.
Нажимаем кнопку Next, и должен начаться процесс установки. В конце установки появится окно:
Нужно выбрать пункт “Yes, I want to restart my computer now” и нажать кнопку Finish.
После перезагрузки компьютера должно/может появиться окно:
Просто закрываем его. Все, на этом установка MPLAB закончена.
Однако этого не достаточно. Для написания программ на языке Си нам нужно установить хорошо зарекомендовавший себя компилятор PICC. Данный компилятор подходит для микроконтроллеров семейства PIC10/12/16. Для микроконтроллеров семейства PIC18 понадобится устанавливать еще PICC-18.
Сначала нужно скачать компилятор. Заходим на сайт http://htsoft.com/ и нажимаем ссылку PIC10/12/16 MCUs. Внизу страницы будут ссылки на различные версии компилятора. Нужно скачать по ссылке HI-TECH C Compiler for PIC10/12/16 MCUs (PRO/Standard/LITE) Update v9.83. Возможно, потребуется зарегистрироваться на сайте microchip.com для того чтобы скачать компилятор.
Данный компилятор не является бесплатным, поэтому Вы можете воспользоваться им бесплатно только 45 дней. Для начала нам этого достаточно. Ниже я приведу ссылку на архив с зарегистрированным компилятором, который я Вам рекомендую установить.
Итак, после закачки у Вас должен появиться picc_9_.83_win.exe. Запускаем его.
Нажимаем кнопку Next.
Выбираем пункт “Activate in PRO mode 45 day evalution” – это позволит Вам пользоваться данным компилятором 45 дней в полнофункциональном режиме. Нажимаем кнопку Next.
Ставим галочку “I accept the terms of the license agreement” и нажимаем Next.
Далее должно появиться сообщение, говорящее о том, что компилятор активирован (на 45 дней).
Жмем ОК.
Здесь предлагается выбрать директорию, куда нужно установить компилятор. Оставляем все по умолчанию и нажимаем Next.
Здесь можно выбрать язык для сообщений. Я оставил English. Нажимаем Next.
Дальше идет процесс установки:
Все! Установка закончена. Нажимаем Finish.
Теперь необходимо убедиться, что компилятор установился и интегрирован в среду MPLAB. Для этого запускаем программу MPLAB. Заходим в меню Project->ProjectWizard и нажимаем Далее. Выбираем Device –> PIC12F675 и снова нажимаем Далее. Должно появиться следующее окно:
В списке Active Toolsuite проверяем наличие компилятора HI-TECH Universal ToolSuite. Если его там нет, значит Вы что-то сделали неправильно при установке. Попытайтесь переустановить компилятор.
Если у Вас по каким-то причинам не вышло скачать компилятор на сайте htsoft.com, можете скачать его здесь picc_9_.83_win.exe.
Мануал на PICC 9.83 можно скачать здесь или здесь.
Рекомендую скачать активированную версия компилятора PICC 9.50.
После того, как закончится закачка, у Вас должен появиться архив picc_v9.50_full.zip. Распаковываем его и копируем папки PICC и PICC-18 в папку, куда был установлен PICC Universal ToolSuite, т.е. в папку c:Program FilesHI-TECH Software. Затем нужно запустить файл PICC9.50PL2_REG.reg в папке c:Program FilesHI-TECH SoftwarePICC9.50resources и нажать Да – таким образом происходит активация компилятора. Дальше заходим в папку c:ProgramFilesHI-TECHSoftwarePICC9.50bin и запускаем программу MPLABConfig.exe. Эта программа нужна для того, чтобы компилятор добавился в список Active Toolsuite в MPLAB.
Нажимаем Install.
Нажимаете Finish. Все, теперь Вы готовы приступить к написанию программ для PIC– микроконтроллеров!
Ну вот, пожалуй, на этом и заканчивается наш урок. В следующих уроках рассмотрим установку программы Proteus 7 Professional, попробуем создать первый проект в MPLAB и смоделируем работу микроконтроллера в Proteus.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Источник: hamlab.net