14 февраля 2010

AVR в Ubuntu

Для кого-то Linux ассоциируется с консолью и серверами. Но с каждым годом все больше людей начинают использовать его в качестве домашней системы. К примеру, для работы с AVR микроконтроллерами консолью можно вообще не пользоваться, делая все через GUI. Рассмотрим установку и настройку нужного софта на примере Ubuntu 9.10.
Мне для комфортной работы с AVR необходим удобный текстовый редактор с подсветкой кода, компилятор и программатор. Практически все можно найти в стандартных репозиториях.


В качестве компилятора будет использоваться avra - это фактически ассемблер для AVR контроллеров.

В качестве редактора можно использовать Geany Я особо не выбирал его, просто установил первый попавшийся редактор, который оказался достаточно удобным для меня: подсветка кода, компиляция и прошивание в один клик, в случае ошибок снизу выводятся сообщения компилятора.

Его настройка достаточно проста: Заходим в пункт меню "Параметры сборки" и вписываем:
Скомпилировать: make compile FILE=%e
Выполнить: make program FILE=%e
Этими командам мы вызываем утилиту make. Для ее работы необходимо в папку с проектом положить файл makefile со следующим содержанием:

#====================================================================
# Makefile for AVRA Assembler

#AVRA options
INCLUDEDIR=/media/Data/Учеба/AVR/Projects/appnotes/

#Programmer options
DEVICE=m16
PORT=usb
PROG=usbasp

compile:
avra -I $(INCLUDEDIR) -fI -o $(FILE) $(FILE).asm

program:
avrdude -p $(DEVICE) -P $(PORT) -c $(PROG) -e -U flash:w:$(FILE).hex

clean:
rm -f $(FILE).cof $(FILE).eep.hex $(FILE).hex $(FILE).obj *~
#====================================================================

Незабудте настроить переменные под себя:
INCLUDEDIR - папка с аппнотами
DEVICE - используемый микроконтроллер
PORT - порт подключения программатора
PROG - программатор

Из makefile уже видно, какой программатор мы будем использовать - это avrdude
Для него есть так же графическая оболочка avr8-burn-o-mat, через которую можно прошивать контроллер и править фьюзы.
Кроме avr8-burn-o-mat все остальные программы уставливаются из репозитория, для чего можно один раз залезть в консоль:
sudo apt-get install avra avrdude geany