Рабочее место разработки прошивок для МК AVR

Материал из roboforum.ru Wiki
Перейти к: навигация, поиск
Внимание!
Внимание!

НЕ ИСПОЛЬЗУЙТЕ В AVRStudio В ПУТИ К ПРОЕКТУ РУССКИЕ БУКВЫ, ИНАЧЕ БУДУТ КАК МИНИМУМ ПРОБЛЕМЫ С Makefile'ом ПРИ ПОПЫТКЕ СКОМПИЛИРОВАТЬ ПРОЕКТ.





На этой странице мы укажем все необходимое, чтобы быстро начать разработку прошивок для МК "AVR"

Софт для разработки прошивок - WinAVR+AVRStudio4

В качестве основного инструмента выбираем связку AVRStudio + WinAVR .

Порядок скачивания и установки

  1. Установка AVRStudio;
    1. Скачать последнюю версию AVRStudio (~90Mb) с сайта: www.atmel.ru;
    2. Запустить исполняемый файл, дождаться окончания установки отвечая по пути на все вопросы;
  2. Установка WinAVR;
    1. Скачать последнюю версию WinAVR с сайта: winavr.sourceforge.net;SF download page;
    2. Запустить исполняемый файл, дождаться окончания установки, отвечая по пути на все вопросы;
  3. Запустить среду разработки AVRStudio и загрузить в неё тестовый проект, скомпилировать и убедиться, что всё ок.

Настройка проекта WinAVR в картинках [1]

Тестовый проект PORTB_LED_FLASH

Моргаем светодиодами подключенными через резисторы 300-560 Ом к PORTB.

Кратко язык Си для AVR и он-лайн книга "Язык программирования Си" Брайан В. Керниган, Деннис М. Ритчи [2]

Устройство AVR и даташит на русском языке [3]

main.c: <source lang="c">#include <avr/io.h>

  1. include <util/delay.h>
  2. include <inttypes.h>

int main(void) { char i; DDRB = 0xFF; // сделать все выводы PORTB выходами PORTB = 0x00; // вывести "0" на все ножки PORTB

while(1) { _delay_ms(250); // пауза 250 милиСек PORTB = 0xFF; // вывести "1" на все ножки PORTB _delay_ms(250); PORTB = 0x00; // вывести "0" на все ножки PORTB } return 0; } </source>

Для сборки проекта используется утилита make[1]. Она выполняет правила, записанные в файле Makefile. Его можно написать вручную, а можно воспользоваться программой MFile из состава WinAVR вот так [4]. Пример make-файла для тестового проекта PORTB_LED_FLASH.

Софт для симуляции выполнения прошивок на МК - VMLAB

В качестве основного пакета для эмуляции МК "AVR" был выбран VMLAB [5].

Рекомендуется скачать и использовать мощнейший симулятор электроники и множества микроконтроллеров - PROTEUS [6] -это средство сквозного проектирования - от идеи до файлов с результатами работы устройства и файлов для изготовления платы.

Порядок скачивания и установки

По-шаговая инструкция как скачать, установить и проверить работу VMLAB [7]. Подробное описание симуляции AVR в VMLAB [8].

Тестовый проект (мигаем светодиодами)

Переключение светодиодов в VMLAB [9].

Программатор для прошивки МК

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

Вариант решения Внешний вид Комментарий Приблизительная стоимость Где взять
Самодельный программатор "5 проводков" для LPT-порта AVRProgrammerLPT-5wires small.jpg Может "сжечь" LPT-порт на материнской плате;

Самый дешевый и быстрый вариант;

от 3$ Собрать самому
Самодельный программатор с буфером для LPT-порта AVRProgrammerLPT-buffered small.jpg Менее быстрый, зато более надежный вариант; от 7$ Собрать самому
Готовый программатор AVR910 для COM-порта Файл:AVRProgrammerCOM-AVR910 small.jpg Очень надежный вариант от 25$ Купить в радиотоварах

Минимальное "железо" кроме программатора нужное для экспериментов

В этом разделе мы расскажем что вам будет нужно, чтобы начать разработку прошивок для МК AVR и как всё это собрать воедино и запустить тестовый проект.

Пока вы не уверены в своих силах и не имеете нужных компонентов - вы можете проверять работу ваших программ в VMALB и PROTEUS - вы не сожгете ни одного компонента ! И это +

Минимальный рекомендуемый набор для разработки устройств на МК

В минимальном рекомендуемом варианте, кроме программатора, вам потребуются комплектующие общей стоимостью порядка 20$:

Название Внешний вид Приблизительная стоимость Где взять
Адаптер питания стабилизированный 220V AC => 5V DC AcDc5V small.jpg от 4$

Часто уже есть, например от USB-хабов D-Link

Купить в радиотоварах
Макетная плата для работы без пайки SolderlessBreadboard small.jpg от 5$ Купить в радиотоварах
Микроконтроллер AVR ATMega16 в DIP-корпусе ATMega16DIP small.jpg ~5$ Купить в радиотоварах
Резисторы 0.25Вт, 1 кОм, 10 кОм, 100 Ом по 5 штук каждого Resistors small.jpg ~0.5$ Купить в радиотоварах
Конденсатор 0.1мкФ - 3шт Capacitor small.jpg ~0.5$ Купить в радиотоварах

Правила подключения к МК питания и других обязательных элементов обвязки

Как подключить к МК питание, ресет и т.п. [10] и другие компоненты на примере фирменной платы [11] электропривода. Куски схем и номиналы компонентов подключаемых к AVR берите из апноутов - примеров применения компонента от производителя.

Тестовый проект на МК (мигаем светодиодами)

тестовый проект написан в WinAVR и мигающий светодиодами в PROTEUS. [12]

См. также