Главная Sunday, October 22 2017  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
лента новостей сайта microsin.ru лента новостей
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:
Кто он-лайн
Сейчас на сайте:
Гостей - 6
Модуль рекламы
Поисковые системы

Работа с макетной платой metaboard в среде программирования Arduino Версия для печати
Написал microsin   
04.11.2011

Arduino позволяет быстро и просто начать делать интеллектуальные устройства на микроконтроллерах AVR. В этой статье будет рассмотрена работа с макетной платой metaboard на примере создания простейшего проекта, мигающего светодиодом.

Итак, процесс по шагам (на операционной системе Windows).

1. Если у Вас еше нет среды разработки Arduino, то Вы можете её свободно скачать, см. [1]. Скачанный файл - просто ZIP архив с именем наподобие arduino-0022.zip. Сама система Arduino сделана так, что установки не требуется, нужно просто скопировать из архива папку arduino-0022 (или аналогичную папку с другим именем, в зависимости от релиза) в папку Program Files системы Windows. Запускать нужно файл arduino.exe, можете создать для него ярлык на Рабочем столе или в меню Пуск системы Windows.

arduino-shortcut.PNG 

2. Чтобы начать работу, Вам нужна Arduino-совместимая плата. В качестве такой можно использовать макетную плату metaboard как дешевую альтернативу "родным" платам Arduino. Плату metaboard можно собрать самому или купить (см. [2, 3]). 

metaboard-IMG_1402.JPG 

3. Поставьте перемычку JP5 на макетной плате metaboard в положение 1-2. В этом положении питание на чип ATmega328P будет подаваться от интерфейса USB. Поставьте также перемычку JP6 Upload и подключите плату к компьютеру по USB.

metaboard-JP5-USB-power.jpg metaboard-JP6-bootloader-activate.jpg

После подключения платы нажмите кнопку S1 Reset. На компьютере обнаружится новое устройство USBasp, и операционная система Windows запросит для него драйвер. Драйвер скачайте по ссылке [4], или возьмите его в пакете архива [5] - usbasp-windriver.2011-05-28.zip

4. Нужно настроить IDE Arduino так, чтобы она могла записывать код в плату metaboard через интерфейс USB по протоколу USBasp. Для этого нужно в блокноте (Notepad) или в любом текстовом редакторе открыть файл c:\Program Files\arduino-0022\hardware\arduino\boards.txt, и в конец файла добавить следующие строки для metaboard c чипом ATmega168PA:

##############################################################

metaboard.name=Metaboard ATmega168PA

metaboard.upload.protocol=usbasp
metaboard.upload.maximum_size=14336
metaboard.upload.speed=19200

metaboard.build.mcu=atmega168
metaboard.build.f_cpu=16000000L
metaboard.build.core=arduino

metaboard.upload.disable_flushing=true

Для metaboard c чипом ATmega328PA нужно добавить в конец файла следующее:

##############################################################

metaboard.name=Metaboard ATmega328P

metaboard.upload.protocol=usbasp
metaboard.upload.maximum_size=30720
metaboard.upload.speed=19200

metaboard.build.mcu=atmega328p
metaboard.build.f_cpu=16000000L
metaboard.build.core=arduino

metaboard.upload.disable_flushing=true

Смысл добавленных строк понятен из содержимого - они описывают metaboard для чипа ATmega168PA или ATmega328P. Здесь также указывается частота кварцевого резонатора (обычно в metaboard используется кварцевый резонатор на 16 МГц, но можно применить кварцы на 12, 15, 16.5, 20 МГц). После того, как эти строки будут добавлены, в Arduino IDE появивятся в меню Tools -> Board пункт Metaboard ATmega168PA или Metaboard ATmega328P. 

arduino-add-metaboard-to-menu.png  

5. В нашем примере работы в среде Arduino мы попробуем помигать светодиодом. Для этого его нужно подключить через резистор к порту 13 Arduino.

metaboard-LED-connection.png metaboard-LED-connection-IMG_1422.JPG

Для макетной платы metaboard порт 13 Arduino будет соответствовать контакту B5 разъема JP2. Светодиод будет подключен катодом к контакту GND разъема JP2, а анодом через резистор 470 Ом - к контакту B5 разъема JP2. Если на порт 13 Arduino выдать лог. 1, то светодиод загорится, а если 0, то погаснет.

6. Теперь загрузим в Arduino IDE готовый проект мигания светодиодом. Это делается через меню File -> Examples -> 1.Basics -> Blink. Выберите в меню плату metaboard (Tools -> Board -> Metaboard ATmega328P). Выполните компиляцию программы Sketch -> Verify / Compile (можно просто нажать Ctrl+R).

7. Теперь нужно закачать нашу программу в плату metaboard. На этом шаге плата должна быть подключена к компьютеру, бутлоадер активирован и для него установлен драйвер (предполагается, что Вы выполнили все действия шага 3). Загрузите программу в плату (File -> Upload to I/O Board, или нажмите Ctrl+U). Через несколько секунд программа загрузится в память чипа платы metaboard, и светодиод начнет мигать (1 секунда - горит, 1 секунда - погашен).

arduino-blink-example.png metaboard-blink-LED.gif

[Ссылки]

1Среда разработки Arduino, ссылки на закачку
2Что такое Metaboard
3Макетная плата metaboard (AVR микроконтроллер ATmega168PA или ATmega328P).
4Программатор USBasp, здесь можно взять драйвер для операционной системы Windows.
5Разводка печатной платы, принципиальная схема и фотографии внешнего вида metaboard, исходный код и прошивки бутлоадера платы metaboard (USBasp), а также драйвер к нему для операционной системы Windows.
6USB бутлоадер USBaspLoader на сайте автора.
7AVR-USB-MEGA16: USB bootloader USBasp для микроконтроллера ATmega32.
8Ссылки на закачку релизов библиотеки libusb.

Последнее обновление ( 05.11.2011 )
 

Комментарии  

  1. #4 RBuraev
    2011-11-2513:39:29 Каким образом можно работать на макетной плате metaboard с Serial портом, например как реализовать функцию Serial.println("Hello Computer")? В представленной схеме выводы RX и TX никуда не подключены. В оригинальном Arduino RX и TX подключаются к микросхемк FT232RL - как реализовать эту функцию?

    microsin: чтобы увидеть все то, что выводится через Serial.println, Вам нужно самому что-то подключить на выводы RX и TX, другого варианта нет.
  2. #3 Владимир
    2011-11-0822:16:40 Bomond, а не знаете как работать в LV с Мегой?
    Напишите мне на почту (nikishin_v[dog ]mail.ru), пообщаемся, чтобы тут не по теме не писать.
  3. #2 Bomond
    2011-11-0611:30:30 Владимир, LabView эту плату не подхватит в таком виде, для того чтобы с ней работать контроллер должен быть прошит загрузчиком, который идет с LabView. Об этой процедуре можно почитать например вот тут: http://digital.ni.com/public.nsf/allkb/8C07747189606D148625789C005C2DD6?OpenDocument
  4. #1 Владимир
    2011-11-0516:06:05 Было бы интересно узнать - "подхватит" ли её LabVIEW? Они выпустили бесплатный тулкит для работы с контролерами Arduino.

    microsin: к сожалению, почти не знаком с LabVIEW и тем более с arduino-тулкитом от LabVIEW, поэтому не могу ответить на вопрос. Мне самому очень интересно.

Добавить комментарий

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

След. >

Top of Page
 
microsin © 2017