Рабочее место разработки прошивок для МК AVR — различия между версиями
Hamble (обсуждение | вклад) (→Порядок скачивания и установки) |
Hamble (обсуждение | вклад) (→Тестовый проект PORTB_LED_FLASH) |
||
Строка 22: | Строка 22: | ||
=== Тестовый проект PORTB_LED_FLASH === | === Тестовый проект PORTB_LED_FLASH === | ||
− | Моргаем светодиодами | + | Моргаем светодиодами подключенными через резисторы 300-560 Ом к PORTB. |
+ | |||
+ | '''Кратко язык Си для AVR''' и он-лайн книга "Язык программирования Си" Брайан В. Керниган, Деннис М. Ритчи [http://avr123.nm.ru/05.htm] | ||
+ | |||
'''main.c''': | '''main.c''': | ||
Строка 32: | Строка 35: | ||
{ | { | ||
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; | ||
Строка 47: | Строка 50: | ||
Для сборки проекта используется утилита 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 == |
Версия 17:48, 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]
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 вот так [3]. Пример make-файла для тестового проекта PORTB_LED_FLASH.
Софт для симуляции выполнения прошивок на МК - VMLAB
В качестве основного пакета для эмуляции МК "AVR" был выбран VMLAB.
Порядок скачивания и установки
Здесь будет описан порядок установки и проверки симулятора.
Тестовый проект (мигаем светодиодами)
Здесь будет описан порядок запуска тестового проекта.
Программатор для прошивки МК
Здесь не существует варианта, который мы могли бы рекомендовать однозначно. Диапазон решений сильно отличается по цене, надежности и трудозатратам, которые нужно вложить в программатор, если делать его самому. Основные три варианта приведены ниже, выбрать из них предстоит вам самим:
Вариант решения | Внешний вид | Комментарий | Приблизительная стоимость | Где взять |
---|---|---|---|---|
Самодельный программатор "5 проводков" для LPT-порта | Может "сжечь" LPT-порт на материнской плате;
Самый дешевый и быстрый вариант; |
от 3$ | Собрать самому | |
Самодельный программатор с буфером для LPT-порта | Менее быстрый, зато более надежный вариант; | от 7$ | Собрать самому | |
Готовый программатор AVR910 для COM-порта | Файл:AVRProgrammerCOM-AVR910 small.jpg | Очень надежный вариант | от 25$ | Купить в радиотоварах |
Минимальное железо кроме программатора нужное для экспериментов
В этом разделе мы расскажем что вам будет нужно, чтобы начать разработку прошивок для МК AVR и как всё это собрать воедино и запустить тестовый проект.
Минимальный рекомендуемый набор для разработки устройств на МК
В минимальном рекомендуемом варианте, кроме программатора, вам потребуются комплектующие общей стоимостью порядка 20$:
Правила подключения к МК питания и других обязательных элементов обвязки
Здесь будет сказано как подключить к МК питание, ресет и т.п.
Тестовый проект на МК (мигаем светодиодами)
Здесь будет рассмотрен тестовый проект мигающий светодиодами.