Рабочее место разработки прошивок для МК AVR — различия между версиями
Mazayac (обсуждение | вклад) (→Программатор для прошивки МК) |
Hamble (обсуждение | вклад) (→Тестовый проект PORTB_LED_FLASH) |
||
(не показано 9 промежуточных версий 2 участников) | |||
Строка 9: | Строка 9: | ||
В качестве основного инструмента выбираем связку AVRStudio + WinAVR . | В качестве основного инструмента выбираем связку AVRStudio + WinAVR . | ||
− | === Порядок | + | === Порядок скачивания и установки === |
# Установка AVRStudio; | # Установка AVRStudio; | ||
Строка 16: | Строка 16: | ||
# Установка WinAVR; | # Установка WinAVR; | ||
## Скачать последнюю версию WinAVR с сайта: [http://winavr.sourceforge.net/ winavr.sourceforge.net];[http://sourceforge.net/project/showfiles.php?group_id=68108 SF download page]; | ## Скачать последнюю версию WinAVR с сайта: [http://winavr.sourceforge.net/ winavr.sourceforge.net];[http://sourceforge.net/project/showfiles.php?group_id=68108 SF download page]; | ||
− | ## Запустить исполняемый файл, дождаться окончания установки отвечая по пути на все вопросы; | + | ## Запустить исполняемый файл, дождаться окончания установки, отвечая по пути на все вопросы; |
# Запустить среду разработки AVRStudio и загрузить в неё тестовый проект, скомпилировать и убедиться, что всё ок. | # Запустить среду разработки AVRStudio и загрузить в неё тестовый проект, скомпилировать и убедиться, что всё ок. | ||
+ | |||
+ | '''Настройка проекта WinAVR в картинках''' [http://avr123.nm.ru/04.htm] | ||
=== Тестовый проект PORTB_LED_FLASH === | === Тестовый проект PORTB_LED_FLASH === | ||
− | Моргаем светодиодами на | + | Моргаем светодиодами подключенными через резисторы 300-560 Ом к PORTB. |
+ | |||
+ | '''Кратко язык Си для AVR''' и он-лайн книга "Язык программирования Си" Брайан В. Керниган, Деннис М. Ритчи [http://avr123.nm.ru/05.htm] | ||
+ | |||
+ | '''Устройство AVR''' и даташит на русском языке [http://avr123.nm.ru/02.htm] | ||
'''main.c''': | '''main.c''': | ||
Строка 30: | Строка 36: | ||
{ | { | ||
char i; | char i; | ||
− | DDRB = 0xFF; | + | DDRB = 0xFF; // сделать все выводы PORTB выходами |
− | PORTB = 0x00; | + | PORTB = 0x00; // вывести "0" на все ножки PORTB |
while(1) | while(1) | ||
{ | { | ||
+ | _delay_ms(250); // пауза 250 милиСек | ||
+ | PORTB = 0xFF; // вывести "1" на все ножки PORTB | ||
_delay_ms(250); | _delay_ms(250); | ||
− | PORTB = | + | PORTB = 0x00; // вывести "0" на все ножки PORTB |
− | |||
− | |||
} | } | ||
return 0; | return 0; | ||
Строка 45: | Строка 51: | ||
Для сборки проекта используется утилита make<ref>[http://www.linux.org.ru/books/GNU/Gmake.htm Эффективное использование GNU make]</ref>. | Для сборки проекта используется утилита make<ref>[http://www.linux.org.ru/books/GNU/Gmake.htm Эффективное использование GNU make]</ref>. | ||
− | Она выполняет правила, записанные в файле '''Makefile'''. Его можно написать вручную, а можно воспользоваться программой из состава WinAVR. [[Пример make-файла для тестового проекта PORTB_LED_FLASH]]. | + | Она выполняет правила, записанные в файле '''Makefile'''. Его можно написать вручную, а можно воспользоваться программой '''MFile''' из состава WinAVR вот так [http://avr123.nm.ru/04.htm]. [[Пример make-файла для тестового проекта PORTB_LED_FLASH]]. |
== Софт для симуляции выполнения прошивок на МК - VMLAB == | == Софт для симуляции выполнения прошивок на МК - VMLAB == | ||
− | В качестве основного пакета для эмуляции МК "AVR" был выбран VMLAB. | + | В качестве основного пакета для эмуляции МК "AVR" был выбран VMLAB [http://avr123.nm.ru]. |
+ | |||
+ | Рекомендуется скачать и использовать мощнейший симулятор электроники и множества микроконтроллеров - PROTEUS [http://oProteus.narod.ru] -это средство сквозного проектирования - от идеи до файлов с результатами работы устройства и файлов для изготовления платы. | ||
=== Порядок скачивания и установки === | === Порядок скачивания и установки === | ||
− | + | По-шаговая инструкция как скачать, установить и проверить работу VMLAB [http://avr123.nm.ru]. | |
+ | Подробное описание симуляции AVR в VMLAB [http://avr123.nm.ru/z3.htm]. | ||
=== Тестовый проект (мигаем светодиодами) === | === Тестовый проект (мигаем светодиодами) === | ||
− | + | Переключение светодиодов в VMLAB [http://avr123.nm.ru/z2.htm]. | |
− | |||
== Программатор для прошивки МК == | == Программатор для прошивки МК == | ||
Строка 88: | Строка 96: | ||
|} | |} | ||
− | == Минимальное железо кроме программатора нужное для экспериментов == | + | == Минимальное "железо" кроме программатора нужное для экспериментов == |
В этом разделе мы расскажем что вам будет нужно, чтобы начать разработку прошивок для МК AVR и как всё это собрать воедино и запустить тестовый проект. | В этом разделе мы расскажем что вам будет нужно, чтобы начать разработку прошивок для МК AVR и как всё это собрать воедино и запустить тестовый проект. | ||
+ | |||
+ | Пока вы не уверены в своих силах и не имеете нужных компонентов - вы можете проверять работу ваших программ в VMALB и PROTEUS - вы не сожгете ни одного компонента ! И это + | ||
=== Минимальный рекомендуемый набор для разработки устройств на МК === | === Минимальный рекомендуемый набор для разработки устройств на МК === | ||
Строка 128: | Строка 138: | ||
=== Правила подключения к МК питания и других обязательных элементов обвязки === | === Правила подключения к МК питания и других обязательных элементов обвязки === | ||
− | + | Как подключить к МК питание, ресет и т.п. [http://avr123.nm.ru/07.htm] и другие компоненты на примере фирменной платы [http://avr123.nm.ru/01.htm] электропривода. Куски схем и номиналы компонентов подключаемых к AVR берите из апноутов - примеров применения компонента от производителя. | |
=== Тестовый проект на МК (мигаем светодиодами) === | === Тестовый проект на МК (мигаем светодиодами) === | ||
− | + | тестовый проект написан в WinAVR и мигающий светодиодами в PROTEUS. [http://avr123.nm.ru/04.htm] | |
== См. также == | == См. также == | ||
<references /> | <references /> |
Текущая версия на 18:11, 2 ноября 2008
Внимание! | |
НЕ ИСПОЛЬЗУЙТЕ В AVRStudio В ПУТИ К ПРОЕКТУ РУССКИЕ БУКВЫ, ИНАЧЕ БУДУТ КАК МИНИМУМ ПРОБЛЕМЫ С Makefile'ом ПРИ ПОПЫТКЕ СКОМПИЛИРОВАТЬ ПРОЕКТ. |
На этой странице мы укажем все необходимое, чтобы быстро начать разработку прошивок для МК "AVR"
Содержание
Софт для разработки прошивок - WinAVR+AVRStudio4
В качестве основного инструмента выбираем связку AVRStudio + WinAVR .
Порядок скачивания и установки
- Установка AVRStudio;
- Скачать последнюю версию AVRStudio (~90Mb) с сайта: www.atmel.ru;
- Запустить исполняемый файл, дождаться окончания установки отвечая по пути на все вопросы;
- Установка WinAVR;
- Скачать последнюю версию WinAVR с сайта: winavr.sourceforge.net;SF download page;
- Запустить исполняемый файл, дождаться окончания установки, отвечая по пути на все вопросы;
- Запустить среду разработки AVRStudio и загрузить в неё тестовый проект, скомпилировать и убедиться, что всё ок.
Настройка проекта WinAVR в картинках [1]
Тестовый проект PORTB_LED_FLASH
Моргаем светодиодами подключенными через резисторы 300-560 Ом к PORTB.
Кратко язык Си для AVR и он-лайн книга "Язык программирования Си" Брайан В. Керниган, Деннис М. Ритчи [2]
Устройство AVR и даташит на русском языке [3]
main.c: <source lang="c">#include <avr/io.h>
- include <util/delay.h>
- 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-порта | Может "сжечь" LPT-порт на материнской плате;
Самый дешевый и быстрый вариант; |
от 3$ | Собрать самому | |
Самодельный программатор с буфером для LPT-порта | Менее быстрый, зато более надежный вариант; | от 7$ | Собрать самому | |
Готовый программатор AVR910 для COM-порта | Файл:AVRProgrammerCOM-AVR910 small.jpg | Очень надежный вариант | от 25$ | Купить в радиотоварах |
Минимальное "железо" кроме программатора нужное для экспериментов
В этом разделе мы расскажем что вам будет нужно, чтобы начать разработку прошивок для МК AVR и как всё это собрать воедино и запустить тестовый проект.
Пока вы не уверены в своих силах и не имеете нужных компонентов - вы можете проверять работу ваших программ в VMALB и PROTEUS - вы не сожгете ни одного компонента ! И это +
Минимальный рекомендуемый набор для разработки устройств на МК
В минимальном рекомендуемом варианте, кроме программатора, вам потребуются комплектующие общей стоимостью порядка 20$:
Правила подключения к МК питания и других обязательных элементов обвязки
Как подключить к МК питание, ресет и т.п. [10] и другие компоненты на примере фирменной платы [11] электропривода. Куски схем и номиналы компонентов подключаемых к AVR берите из апноутов - примеров применения компонента от производителя.
Тестовый проект на МК (мигаем светодиодами)
тестовый проект написан в WinAVR и мигающий светодиодами в PROTEUS. [12]