This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| ru:examples:setup:linux [2013/08/27 15:02] – eduardtlmk | ru:examples:setup:linux [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Среда разработки KontrollerLab (для Linux) ATmega128 ====== | ||
| - | Следующее руководство описывает установку и использование среды разработки AVR для Ubuntu 9.10 операционной системы на примере ATMega128 платформы. | ||
| - | |||
| - | ===== Установка программного обеспечения ===== | ||
| - | |||
| - | Установить следующее программное обеспечение: | ||
| - | |||
| - | **1. Пакеты программного обеспечения для Linux** | ||
| - | |||
| - | * gcc-avr – GNU компилятор на языке Си для платформы AVR | ||
| - | * avrdude – программа для загрузки hex файла в микроконтроллер | ||
| - | * avr-libc – библиотека языка Си для написания кода для платформы AVR | ||
| - | |||
| - | Для инсталляции используйте строку приказа терминала: | ||
| - | |||
| - | sudo apt-get install gcc-avr avrdude avr-libc | ||
| - | |||
| - | или графическое программное обеспечение (к примеру, | ||
| - | |||
| - | **2. Библиотека Домашней Лаборатории** | ||
| - | |||
| - | Библиотека упрощает написание программного кода, т.к. функции низкого уровня уже написаны в ней. Для инсталляции библиотеки необходимо сохранить на компьютер файл с именем //Homelab library vX.X.run// с веб-сайта Домашней Лаборатории, | ||
| - | |||
| - | sudo sh homelab_library_vX.X.run | ||
| - | |||
| - | Убедитесь, | ||
| - | |||
| - | **3. KontrollerLab** | ||
| - | |||
| - | KontrollerLab - это IDE (inglise keeles // | ||
| - | |||
| - | sudo dpkg -i kontrollerlab*.deb | ||
| - | |||
| - | Если у вас возникла проблема из-за отсутствия пакетов, | ||
| - | |||
| - | sudo apt-get install –f | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | ===== Подключение программатора ===== | ||
| - | |||
| - | Подключите программатор к компьютеру и убедитесь, | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | Чтобы найти порт, к которому подключен программатор, | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | ~~PB~~ | ||
| - | |||
| - | ===== Создание проекта ===== | ||
| - | |||
| - | Для написания AVR программы, | ||
| - | |||
| - | Для создания проекта необходимо пройти следующие этапы: | ||
| - | |||
| - | **1.** Открыть KontrollerLab (// | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | **2.** Поскольку проект изначально пуст, то к нему необходимо добавить C-файл, куда можно было бы написать код. Выбрать меню //File -> New -> New//. Открывается окно добавления файла, где необходимо выбрать //C source// и назначить имя файла. | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | **3.** Настроить проект KontrollerLabi в соответствии с аппаратным обеспечением Домашней Лаборатории. Выбрать меню //Project -> Configure Project//, из-за чего окно настройки проекта //Common// отображается открытым. Назначить процессором (CPU) ATmega128, тактовой частотой - (clock) 14745600,0 Hz и задать названия создаваемых HEX и MAP файлов. При нажатии кнопки //Set as default//, эти конфигурации устанавливаются используемыми по умолчанию для всех новых проектов. В связи с тем, что аппаратное обеспечение остаётся тем же самым вне зависимости от проекта, | ||
| - | |||
| - | NB! Поскольку в программе KontrollerLab нельзя корректно добавить библиотеку на карту // Linker //, то необходимо настроить добавление библиотеки Домашней Лаборатории здесь, написав в конце | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | ~~PB~~ | ||
| - | |||
| - | Настроить установки компилятора на карте // | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | **4.** Настроить программатор, | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | ~~PB~~ | ||
| - | |||
| - | **5.** Установить параметры текстового редактора так, чтобы табуляция определялась 4 пропусками. Это нужно для того, чтобы при открытии исходного файла другим текстовым редактором, | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | **6.** Настроить открывшиеся окна в KontrollerLab по своему усмотрению и прописать какую-либо лёгкую программу для тестирования среды. В следующей главе приведён пример программы мигающего LED-а. | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | ~~PB~~ | ||
| - | |||
| - | ===== Тестирование установок ===== | ||
| - | |||
| - | Если среда разработки установлена и налажена в первый раз, то имеет смысл протестировать, | ||
| - | |||
| - | **1.** Присоединить программатор с платой модуля контроллера ATmega128. Проверить, | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | **2.** Ввести простой код Си и скомпилировать его (// | ||
| - | |||
| - | <code c> | ||
| - | #include < | ||
| - | #include < | ||
| - | |||
| - | int main(void) | ||
| - | { | ||
| - | // Настройка вывода PB7 выходом | ||
| - | DDRB = 0x80; | ||
| - | |||
| - | // Бесконечный цикл | ||
| - | while (true) | ||
| - | { | ||
| - | // Инвертирование вывода PB7 | ||
| - | PORTB ^= 0x80; | ||
| - | hw_delay_ms(500); | ||
| - | } | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | [{{ : | ||
| - | |||
| - | Убедиться, | ||
| - | |||
| - | **3.** Для загрузки кода выбрать приказ //ignite//. Если всё получится, | ||
| - | |||
| - | Если LED мигает, | ||
| - | Поздравляем! | ||
| - | |||
| - | ===== Использование чисел с плавающей запятой ===== | ||
| - | |||
| - | Иногда в программе AVR может потребоваться использование чисел с плавающей запятой. Для их вычисления и использования с функциями типа //printf// следует в настройках проекта совершить следующие изменения: | ||
| - | |||
| - | **1.** Открыть в меню настройки проекта //Project -> Configure Project// и выбрать карту //Linker//. Отметить в секции //Linker flags// первую галочку (см. приложенное изображение). | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | **2.** Нажать //OK// и закрыть окно настроек. | ||