Codeblocks avr linux настройка

Setting up code blocks for AVR on Ubuntu

Code Blocks is a cross platform free and open source IDE developed for C, C++ and Fotran. This light weight IDE can be used to program AVR microcontrollers also. This tutorial is about how to install and configure Code Blocks (CB) on Ubuntu in order to program Atmel AVR microcontrollers.

Step1 – Install required AVR development tools

You can refer my previous post on how to program avr on ubuntu for beginers for completing this section.

Step2 – Add third party repository to your Ubuntu source list

Here we are going to use private debian repository maintain by Jens. More details on his work can be found in http://apt.jenslody.de/

Open source.list file using following command

sudo nano /etc/apt/sources.list

Then you you will be able to see a longer file with all your repositories. Then append following two lines to that file

deb http://apt.jenslody.de/stable stable main deb-src http://apt.jenslody.de/stable stable main

Save file using [CTRL] + [x] followed by [y]

Step 3 – Installing Code Blocks

The execute following commands on the terminal

sudo apt-get update sudo apt-get install jens-lody-debian-keyring

Step 3b – Additional step

If you are using x64 installation, use following command as well

sudo apt-get install libc6-dev-i386

Step 4 – Creating a new project

  1. Open Code Blocks IDE and go to menu File->New->project
  2. Choose “AVR project” from the dialog box
  3. Follow the wizard and create the project
  4. From the main menu, select Project->built options …
  5. Select “pre/post built” tab from the “Project build option” dialog box
  6. Note there are three options , release and debug
  7. Click on and CUT the content in that “post build steps” texbox on your right
  8. PAST the text which was CUT in the previous step to “post build steps” text boxes appear when you click “release” and “debug” items on your left. (You should copy the same in both of them)
  9. Append following line to the “post build steps” textbox when you see upon clicking “release” on your left
  10. sudo avrdude -p m32 -c usbasp -P usb -U flash:w:$(TARGET_OUTPUT_FILE) $(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME).hex
sudo avrdude -p m32 -c usbasp -P usb -U flash:w:$(TARGET_OUTPUT_FILE) $(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME).hex

Then your project build option dialog box should looks like as follows. N.B. Following screen shots are generated when Debug and Release texts were selected in left section

debug

debug

Congratulations . You are ready use Code Blocks IDE on Ubuntu for programing AVR microcontrollers

Читайте также:  Посмотреть ошибки загрузки линукс

Источник

Программирование микроконтроллеров AVR под LINUX

Сейчас мы расскажем, как как создавать приложения для микроконтроллеров AVR программируя на языке Си, с помощью среды разработки Code::Blocks.

Знакомство со средой

Code::Blocks – свободная кроссплатформенная интегрированная среда разработки приложений. В ее основе лежит архитектура подключаемых модулей, что дает возможность неограниченно расширять возможности среды.

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

Code::Blocks поддерживает множество компиляторов, в том числе целый ряд компиляторов для микропроцессоров:

Code::Blocks работает непосредственно в операционной системе, не требуя каких-либо интерпретаторов, отсюда легкость и быстрота этой IDE.

Code::Blocks ориентирована на разработку приложений на языках C и C++ и входит в состав всех современных популярных дистрибутивов Linux. Официальная версия 8.02 (на ноябрь 2009 ).

Вам наверное известно, что для создания AVR-приложений необходимо, чтобы были установлены три основных пакета из комплекта AVR GCC:
— avr-gcc (компилятор и ассемблер),
— avr-binutils (компоновщик и ряд полезных инструментов)
— avr-libc (стандартная библиотека С для процессоров Atmel AVR).

Современные популярные дистрибутивы Linux содержат пакеты AVR GCC в своих репозиториях. Теперь, когда установлены и Code::Blocks, и AVR GCC, можно приниматься за дело.

Первый запуск

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

Слева расположена панель «Management», три вкладки которой так или иначе имеют отношение к проекту. На первой вкладке, «Projects», приводится список открытых в рабочем пространстве проектов и файлов этих проектов. Файлы автоматически разделяются на три секции: «Sources» («исходные тексты»), «Headers» («заголовочные файлы» и «Others» («другие»). Двойное нажатие на имени файла открывает его в редакторе. На вкладке “Symbols” приводятся все функции, переменные, перечисления, директивы препроцессора и классы, существующие в проекте. Двойное нажатие на любом из этих элементов приведет к перемещению на него курсора в редакторе.

Окно сообщений «Logs & others», расположенное внизу, служит для вывода сообщений (в этом окне также несколько вкладок). На вкладке “Code::Blocks” выводятся сообщения среды, здесь можно получить информацию о возникновении в ней проблем. Вкладка “Build log” показывает команды, выполняемые в процессе сборки приложения. И последняя вкладка “Build messages” предназначена для вывода ошибок и предупреждений компилятора (в сообщения включаются имя файла и номер строки, где найдена ошибка).

Рис.1. Общий вид Code::Blocks

Создание проекта

Если еще ни одного проекта в рабочем пространстве не создано, то после запуска Code::Blocks в центральной панели активна только вкладка «Start here». Для создания нового проекта нужно выбрать команду «Create a new project» или пункт меню «File->New->Project». В любом случае откроется окно выбора шаблона будущего проекта, в котором мы указываем шаблон «AVR Project» и нажимаем кнопку «Go».

Читайте также:  Gtx 650 linux mint

Появится приветственное окно мастера создания AVR-проекта. Нажмите кнопку «Next» и в открывшемся диалоговом окне введите название проекта и каталог, в котором он будет находиться. На основании этих данных программа автоматически предложит пользователю имя файла проекта с расширением *.cbp и каталог проекта, который будет создан. Далее следует нажать кнопку «Next».

В следующем окне предлагается выбрать конфигурации сборки, которые будут использоваться в проекте. По умолчанию активны обе конфигурации: Debug и Release. Компилятор «GNU AVR GCC Compiler» указан заранее. Также здесь можно изменить стандартные каталоги для скомпилированных файлов конфигураций.

В следующем окне мы указываем тип целевого процессора, выбрав его из выпадающего списка (позже это можно сделать в параметрах компиляции). Если в проекте используется внешняя память, стоит указать ее параметры. Далее следует задать значение глобальной переменной проекта F_CPU, указав тактовую частоту процессора в герцах. По умолчанию включено создание файла карты символов (.map) и hex-файлов, а также файла дизассемблерного листинга (.lss). Еще полезно включить параметр «Run avr-size after build» – тогда в конце журнала сборки проекта появится информация о том, сколько места будет занято в памяти программ и в оперативной памяти. По какой-то причине включение параметра создания листинга не оказывает никакого действия при создании проекта, и нужно вручную добавить соответствующую команду в «Pre/post build steps». Нажмите кнопку «Finish» (рисунок 2).

Рисунок 2. Последнее окно мастера создания AVR-проекта

Настройка проекта и среды разработки

Если проект создан с помощью шаблона AVR-проекта, то практически сразу можно перейти к программированию. Тем не менее, мы пройдемся по основным параметрам, чтобы убедиться, что все настроено правильно.

  1. Выберите пункт меню «Project->Build options». Откроется окно настроек параметров сборки (рисунок 3). В левой панели находится дерево целей сборки. На самом верхнем его уровне – настройки сборки для всего проекта. Удобнее всего сначала указать параметры для всего проекта, а уже затем добавлять что-то в отдельных вариантах сборки.
Рисунок 3. Параметры сборки проекта

Прежде всего нужно убедиться в том, что в поле «Selected Compiler» выбран «GNU AVR GCC Compiler». Ниже, на вкладке «Compiler Flags», приводятся флаги компилятора. По умолчанию здесь уже включен полезный флаг «Enable all compiler warnings». Также стоит убедиться в том, что мы правильно выбрали тип процессора, для которого разрабатывается проект.

На вкладке «Linker Options» в панели «Other linker options» видно, что компоновщику задан правильный параметр -mmcu, а в левой панели «Link libraries» нужно указать необходимые для проекта библиотеки, если они есть.

Перейдите к вкладке «Search directories». Ниже, на вкладке «Compiler», нужно вставить путь к заголовочным файлам, например, /usr/avr/include/. Для этого воспользуйтесь кнопкой «Добавить» и впишите правильный путь. Аналогично, на вкладке «Linker» указываем путь к библиотекам AVR GCC, например, /usr/avr/lib.

Вкладка «Pre/post build steps». В поле «Post-build steps» можно увидеть команды для запуска утилит avr-size, avr-objcopy, avr-objdump. Например, для получения листинга (поскольку включение параметра «Create extended listing file» в мастере создания проекта не производит нужного эффекта, по крайней мере в версии 8.02) добавляем такую команду:

avr-objdump -h -S $(TARGET_OUTPUT_FILE) > $(TARGET_OUTPUT_FILE).lss

Если теперь с параметров всего проекта переключиться на более конкретные цели сборки, например, Debug или Release, то можно внести некоторые изменения в параметры сборки. При этом обратите внимание на то, что стал доступен параметр «Policy». Его стандартное значение – «Append target options to project options», т.е. к общим параметрам проекта добавляются параметры для конкретной цели сборки. Есть и другие варианты объединения настроек разных уровней. Это позволяет гибко настраивать проект, не повторяя уже введенные общие параметры.

Читайте также:  Проверить контрольные суммы образа iso linux

Стандартные настройки предусматривают автоматическое включение создания отладочной информации в цели Debug (параметр «-g») и оптимизацию размера полученной программы в цели Release (параметр «-Os»).

Рисунок 4. Настройки целей сборки

При желании можно свой настроенный проект сохранить как шаблон для будущих проектов. Для этого нужно выбрать команду меню «File->Save project as user template. » и ввести имя шаблона. В дальнейшем, при создании нового проекта, можно выбрать желаемый шаблон в категории «User templates» (рисунок 5). После этого потребуется задать пустой каталог, где будет создан новый проект, а затем отредактировать имя проекта.

Рисунок 5. Выбор пользовательского шаблона

Можно даже изменить существующий стандартный шаблон. Для этого в окне выбора шаблонов нажмите правую кнопку мыши на нужном шаблоне и воспользуйтесь опцией «Edit this script» в появившемся меню.

Рисунок 6. Глобальные пути для заголовочных файлов

Рисунок 6. Глобальные пути для заголовочных файлов

На вкладке «Compiler settings» вряд ли стоит что-либо менять: эти параметры станут стандартными для всех AVR-проектов. А вот на вкладках «Search directories->Compiler» и «Search directories->Linker» в моем случае уже стояли стандартные пути /usr/include и /usr/lib соответственно, что было неверно. Можно тут указать правильные пути (например, /usr/avr/include и /usr/avr/lib), а в настройках проекта удалить эти же пути, я же просто очистил эти поля кнопками «Clear», потому что параметры проекта к этому моменту уже были настроены.

На вкладке «Toolchain executables» проверяем, правильно ли указаны имена исполняемых файлов из комплекта AVR GCC и пути к ним. С помощью кнопки «autodetect» можно попробовать автоматически определить все эти значения. Если же что-то получилось не так (например, дистрибутив AVR GCC оказался с экзотическими именами и каталогами для размещения), то это как раз место, где все можно исправить вручную. На рисунке 7 в поле «Compiler’s installation directory» должно быть указано «/usr», если программы AVR GCC размещаются в каталоге /usr/avr/.

Рисунок 7. Имена файлов из пакета AVR GCC

И последнее. На вкладке «Other settings» есть поле «Compiler logging». В нем можно задать режим журналирования процесса компиляции. Рекомендуется установить здесь значение «Full command line». Это позволит подробно проследить команды, используемые при сборке.

Источник

Оцените статью
Adblock
detector