Мы не выдаем Китай за Италию. Платы от российского производителя по сниженным ценам.

Новинки: Power DC Shield, Светодиодная лента, Freeduino Mini, модули USB Host, Relay.

Введение

Семейство микроконтроллеров Freeduino представлено несколькими вариантами плат, имеющих в общем идентичный функционал, и полностью совместимых с аналогичными вариантами Arduino.

Модули Freeduino основаны на микросхеме ATmega328 (либо ATmega168 в ранних версиях), и легко программируютcя через USB порт (либо COM порт в варианте MaxSerial) при помощи бесплатного программного обеспечения.

Модуль имеет 14 контактов цифрового ввода/вывода, шесть из которых могут быть использованы для вывода сигналов ШИМ, и шесть аналоговых входов АЦП с дискретностью в 1024 значений. Модуль также содержит: кварцевый резонатор на 16 МГц, разъем USB (либо COM в варианте MaxSerial), разъем питания типа Mini-Jack, разъем для подключения внешнего программатора ICSP и кнопку сброса.

Приобретенный в готовом виде модуль содержит все необходимое для разработки микроконтроллерных устройств. Нужно просто подсоединить модуль к компьютеру при помощи стандартного USB кабеля.

В качестве периферии могут быть подключены любые устройства - от светодиодов и простейших датчиков до механизмов радиуоправляемых моделей и роботов. Программы пишутся на простом и интуитивно понятном си-подобном языке (c возможностью подключения сторонних библиотек, например, для управления LCD-дисплеями или двигателями), компилируются и загружаются в устройство одной кнопкой, после чего вы тут же получаете работающее автономное устройство.

Память

Микроконтроллер ATmega328 имеет 32 К программной памяти (из которых 2 К используются для хранения загрузчика). Кроме того, микросхема имеет 2 Кбайт ОЗУ (SRAM), 1 Кбайт байт долговременной памяти данных (EEPROM).

В ранних версиях применялся микроконтроллер ATmega168 с меньшими объемами памяти: память программ - 16 К (2 К заняты загрузчиком), ОЗУ - 1 Кбайт, EEPROM - 512 байт.

Программное обеспечение

Для работы с модулем используется свободное программное обеспечение Arduino, которое можно скачать на сайте разработчика http://www.arduino.cc.

В микроконтроллер записан загрузчик, осуществляющий запись в программную память микроконтроллера программ без использования специального програматора.

Автоматический (программный) сброс

Кроме обычного аппаратного сброса модуль Freeduino имеет возможность производить программный сброс, выполняемый по команде от компьютера. Для этого, один из сигналов (DTR), поступающих с соответствующего выхода микросхемы USB адаптера FT232RL, подключен к входу сброса микроконтроллера через конденсатор 0,1 мкф. В тот момент, когда уровень сигнала на этой линии меняется с высокого на низкий, на входе сброса микроконтроллера появляется короткий отрицательный импульс, длительности которого достаточно для перезагрузки микроконтроллера. Программное обеспечение использует это свойство для автоматического сброса микроконтроллера перед тем, как начать процесс загрузки программы из компьютера в модуль. Это позволяет начать процесс загрузки нажатием всего одной кнопки "Отправить" в окне управляющей программы.

Ввод и вывод данных

Каждый из 14 выводов модуля можно использовать как вход или как выход данных. Эти выводы работают с сигналами уровнем 0...5В. Каждый из выводов рассчитан на входной (или выходной) ток до 20 мА и имеет внутренний программно отключаемый подтягивающий резистор сопротивлением 20-50 кОм, который по умолчанию отключен. Выводы 3, 5, 6, 9, 10 и 11 могут работать в режиме выходов сигналов широтно-импульсного модулирования. Если вы хотите подключить внешние устройства к выводам 1 или 2, то вы должны помнить, что эти выводы совмещены с цепями, работающими в режиме обмена по USB/COM каналу. Поэтому в момент записи программы и при других операциях обмена данными с компьютером внешние цепи нужно будет отключать.

Модуль также имеет 6 аналоговых входов (АЦП), каждый из которых обеспечивает 10 разрядное аналого-цифровое преобразование (т.е. различает 1024 значений уровня сигнала). По умолчанию входы настроены на диапазон входного напряжения от 0 до 5В. Но вы можете снижать верхнюю границу этого диапазона при использовании внешнего источника опорного напряжения и соответствующим образом составленной программы.

Каналы связи

Модуль Freeduino имеет целый ряд возможностей для обмена информацией с компьютером, другими модулями Freeduino/Arduino и любыми микроконтроллерными устройствами. Входящий в модуль микроконтроллер ATmega328 имеет встроенный последовательный интерфейс UART работающий с сигналами TTL уровней (0...+5В), сигналы которого выведены на контакты 1 (RxD) и 2 (TxD) модуля.

USB версии модулей имеют в своем составе USB конвертор FT232RL фирмы FTDI, который обеспечивает работу через создаваемый автоматически виртуальный COM-порт при подключении модуля к компьютеру. Freeduino MaxSerial оснащена преобразователем MAX232 для преобразования TTL уровней к стандарту RS232.

Управляющая программа для компьютера, служащая средой разработки приложений для модулей Freeduino, имеет простые средства, позволяющие получать простые текстовые данные, посылаемые из модуля на компьютер через тот же COM-порт, через который происходит управление и программирование модуля.

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

Микроконтроллер ATmega328 также поддерживает I2C (TWI) шину и шину SPI. Библиотека Freeduino содержит функции для работы с I2C. Для реализации работы с SPI можно обратиться к фирменной документации на микроконтроллер.

Питание

Питание USB версий модуля Freeduino можно осуществлять как от шины USB, так и от внешнего источника питания. Питание Freeduino MaxSerial осуществляется от внешнего источника.

Внешнее питание может осуществляться либо от сетевого блока питания, либо от батареи. На центральный контакт разъема питания подается плюс, а на общий провод минус.

Внешнее напряжение питания может быть от 6 до 20 В. Однако, при входных напряжениях менее 7В напряжение на микроконтроллере может упасть ниже 5В что приведет к нестабильной работе модуля. При напряжениях более 12 В встроенный стабилизатор напряжения может перегреваться, что приведет к снижению надежности. При перегреве он даже может выйти из строя. Рекомендуемый диапазон напряжения питания 7...12 В.

Защита от перегрузок шины USB

USB версии Freeduino имеют защиту, которая предохраняет USB порт вашего компьютера от коротких замыканий и перегрузок по току. Если ток по любой из цепей канала USB превысит 500 мA, то срабатывает устройство защиты – встроенный предохранитель разрывает цепь.

Габаритные размеры

Размеры самой платы составляют 68,5 X 53 мм. Разъемы USB/COM и разъем питания выступают за эти размеры. Плата имеет три крепежных отверстия, при помощи которых вы можете закрепить модуль в любом необходимом месте.

Дополнительные Преимущества

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

Программное обеспечение Arduino работает на Windows, Linux, MacOS X, и других операционных системах, поскольку реализовано на платформе Java.

Программная оболочка является простой в использовании для новичков, но достаточно гибкой для продвинутых пользователей, чтобы быстро достичь нужного результата. Особенно это удобно в образовательной среде, где студенты могут с лёгкостью разобраться с платформой, а преподаватели – разработать учебный курс и задания.

Язык может быть расширен с помощью C++ библиотек, квалифицированные специалисты могут создать свой собственный инструментарий для Freeduino на основе компилятора AVR C. Как само устройство, так и все программное обеспечение является полностью открытым – доступны спецификации, электрические схемы, исходный код.

Проект широко распространен в сети Internet – есть сотни сайтов с готовыми примерами и библиотеками дополнительных функций.

Рекомендуем посетить следующие ресурсы:

на русском языке:

http://www.freeduino.ru

http://habrahabr.ru/blogs/arduino/

http://ru.wikipedia.org/wiki/Arduino

на английском языке:

http://www.arduino.cc/

http://www.freeduino.org/