Опубликовано 2015-02-16 17:05:42 автором Genya

Как быстро начать программировать AVR на Eclipse в Linux (Ubuntu)


Основой, для написания, стала вот эта статья. В которой все объясняется более детально, но не указаны ошибки и способы их решения, с которыми вы рискуете столкнуться. Поэтому в этой статье, в виде пошаговой инструкции, разберем как все сделать (как я сделал у себя). А с той можете ознакомиться для более ясного и полного понимания. Поехали!


Все операции проверялись на Ubuntu 14.04 и Ubuntu 14.10.

Устанавливаем Eclipse

sudo apt-get install eclipse eclipse-cdt


Устанавливаем AVR "причандалы"

sudo apt-get install gcc-avr binutils-avr avr-libc gdb-avr uisp avrdude avarice


Устанавливаем AVR Eclipse Plugin.


Откройте диалог обновлений программного обеспечения («Справка>Install New Software»).

Нажмите кнопку «Add...», расположенную справа, и введите адрес сайта обновлений: http://avr-eclipse.sourceforge.net/updatesite/ (EN)

Затем нажмите OK. Теперь адрес этого сайта будет виден в списке сайтов обновлений. Выберите «AVR Eclipse Plugin» и нажмите кнопку «Install...» в верхнем правом углу.

Дальше соглашаетесь и подтверждаете все что у вас будут спрашивать, не стоит пугаться подобных окон (рис. ниже), хотя можете и подумать - компьютер и риск все же ваши :)

По окончанию у вас попросят разрешения на перезагрузку Eclipse.

В случае, если у вас возникнут проблемы с текущей версией (а у меня так и было), то вас может спасти установка более новой версии со страницы проекта, например версии 2.4.2. Для этого идем по уже знакомому нам пути («Help>Install New Software>Add...») и с помощью кнопки "Archive..." указываем наш скачанный файл, с более новой версией. Ну а дальше все также, вы уже в курсе ;)

Создаем AVR-проект

Для того чтобы создать новый AVR-проект, необходимо сделать следующие шаги: Выберите в меню «File->New->Project...» («Файл->Создать->Проект»).

В появившемся окне выберите, какой проект вы собираетесь создать. Например «С++ Project» и нажмите кнопку «Next >» («Далее >»).

Откроется окно выбора типа проекта. AVR Plugin предлагает два варианта:
«AVR Cross Target Application» – для создания приложения, которое может быть загружено в AVR-процессор;
«AVR Cross Target Static Library» – для создания библиотек часто используемых функций, которые потом можно скомпоновать с программами.

Выберите «AVR Cross Target Application>Empty Project» и введите имя проекта. Нажмите кнопку «Next >» («Далее >»)

Это окно нас пока не интересует, поэтому спокойно его пропустим нажав кнопку «Next >» («Далее >»).

А теперь кульминационный момент. Если вам не повезло и ваше окно отличается от скриншота ниже (отсутствует выбор микроконтроллера на вкладке «MCU Type») то советую вам пролистать статью выше, к моменту установки более новой версии плагина, и проделать сию важную операцию.

Итак, у нас теперь есть проект, но нет кода. Создадим что-нибудь и проверим будет ли это работать вообще.
Чтобы создать новый файл, проделайте следующие операции:
В окне просмотра проектов выберите свой (он же у вас пока один?), нажмите правую кнопку мыши и выберите в выпадающем меню «New->Source File»

В поле «Source File» напишите имя файла "main.cpp" и нажмите кнопку «Готово».

Компиляция проекта

Теперь можно написать текст программы, например, такой:

int main(void)
{
	const int some_size = 1000;

	while(true)
		{
		for (int i = 0; i < some_size; i++)
			int a = 3; // какое-нибудь действие
		}

	return 0; // никогда не дойдет сюда
}
И попробовать собрать свой первый проект. Не забудьте перед сборкой сохранить изменения (Ctrl+S) или настроить что бы сохранение, перед сборкой, происходило автоматически.

Небольшая вводная (картинка ниже):
1. Значок молотка - компиляция (сборка) проекта, два стандартных режима debug и release.
2. Заливка проекта на устройство.

Если после сборки вы не увидели красных Error'ов, то есть хорошие основания полагать что она прошла успешно :). Ниже приведены примеры неудачной и удачной сборки. Warning'и можно игнорировать, но лучше стараться что бы их не было или сводить их к минимуму.

Заливаем готовую прошивку

Те, кто нетерпелив или поленился изучить инструкцию, сразу же получат ошибку (картинка ниже). Потерпите еще, осталось совсем не много, приступаем к финальной части наших мучений настроек Eclipse.

В разделе настроек «Project->Properties->AVR->AVRDude» есть возможность выбора типа программатора и режима его работы.

Если вы впервые зашли на эту вкладку, то в списке выбора у вас ничего не будет. Воспользуйтесь кнопкой «New...»

Далее выбираете ваш тип программатора. На картинке ниже, указан пример с USBasp.

Если вы теперь попытаетесь прошить свое устройство, то скорее всего получите такую ошибку.


Что бы это исправить, достаточно присвоить avrdude suid-бит следующим образом

sudo chmod u+s /usr/bin/avrdude

И, наверное, последний подводный камень, на котором мог разбиться ваш энтузиазм в освоении Eclipse. При попытке залить прошивку на устройство можете получить следующее сообщение.

Не спешите недоумевать от текста «Maybe the project needs to be build first» (ведь вы уже собирали проект перед попыткой его залить?), скорее всего вы собрали проект в debug режиме, мы это сейчас быстренько исправим, найдите только стрелочку возле значка молотка и переключите в «Release».

И закономерный результат наших трудов.


Вуаля! Дело сделано. На этом наша инструкция заканчивается, но не ваши приключения...


P.S. Если в процессе вы где-то напортачили: что-то создали, потом удалили, а потом создали вновь, изменили, а потом вернули обратно и т.п. и теперь не работает даже то, что работало раньше и выскакивают какие-то совсем непонятные ошибки. Не спешите все удалять и выбрасывать свой компьютер. Возможно вас спасет простое средство под названием Clean project. Никакие файлы проекта при этом не удалятся, а только очистятся временные папки. Что бы выполнить нажмите «Project->Clean...»

Комментарии - (0)

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

Для отправки комментария вы должны авторизоваться.