Mega 2560 r3 значение выходов. Настройка плат Arduino при первом подключении к ПК. Подключение и настройка

ATmega2560 . На плате имеется 54 цифровых пина ввода/вывода, 15 из которых могут быть использованы как выходы ШИМ, 16 аналоговых входов, 4 аппаратных последовательных порта UART , кварцевый резонатор с частотой 16 МГц, порт USB , разъем питания, разъем ISCP (In Circuit Serial Programming , программирование в устройстве по последовательному протоколу) и кнопка сброса микроконтроллера. Для того, чтобы начать работу с этой платой необходимо просто подключить ее, используя интерфейс USB к компьютеру, или же просто подать питание от источника постоянного тока, в качестве которого может выступить и батарейка. Arduino Mega 2560 совместима с большинством плат расширения (шилдов), разработанных для Arduino UNO , Duemilanove или Diecimila.

Arduino Mega 2560 заменила собой плату Arduino Mega .

Mega 2560 отличается от всех предыдущих плат тем, что не использует аппаратные мосты USB-to-serial компании FTDI . Вместо этого, он имеет микроконтроллер ATmega16U2 (ATmega8U2 в версиях платы 1 и 2), запрограммированный для работы в качестве USB-to-serial преобразователя.
Во второй ревизии Mega2560 имеет резистор, подтягивающий линию 8U2 HWB на землю, что упрощает перевод в режим DFU .

В Arduino Mega 2560 в ревизии 3 произведены следующие изменения:

  • Цоколевка 1.0: добавлены пины SDA и SCL , расположенные рядом с выводам AREF и два других новых пина размещены рядом c выводом RESET . IOREF позволяет шилдам адаптироваться к напряжению, подаваемому с платы. В будущем шилды будут совместимы и с платами, основанными на микроконтроллерах AVR , работающими с напряжением 5 В, и с платой Arduino Due , работающей с напряжением 3.3 В.
  • Усилена цепь RESET .
  • Произведена замена ATmega 8U2 на 16U2 .

Схема, datasheet, цоколевка

Скачать техническое руководство на микроконтроллеры ATmega 640/1280/1281/2560/2561:

Скачать принципиальную схему на Arduino Mega 2560 :

Распиновка платы Arduino Mega 2560 (кликните на картинке, чтобы увеличить).

Характеристики Arduino Mega 2560

Микроконтроллер ATmega2560
Рабочее напряжение 5 В
Входное напряжение (рекомендовано) 7-12 В
Входное напряжение (предельное) 6-20 В
Цифровые входы/выходы 54 (из которых 15 могут работать как выходы ШИМ)
Аналоговые входы 16
Макс.ток на входе/выходе 40 мА
Макс.ток для вывода 3.3 В 50 мА
Флеш-память (Flash memory) 256 Кб из которых 8Кб используется загрузчиком
ОЗУ (SRAM) 8 Кб
Энергонезависимая память (EEPROM) 4 Кб
Тактовая частота 16 МГц

Питание

Arduino Mega может получать питание от USB -порта или внешнего источника. Источник питания выбирается автоматически.

Внешнее питание (не по USB ) может подаваться от блока питания или батареи. Блок питания подключается к 2.1 мм разъему на плате, который имеет центральный плюсовой вывод. Батарейное питание можно подключать к выводам GND и VIN разъема питания POWER .

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

Выводы питания:

  • VIN . Входное напряжение платы Arduino при использовании внешнего источника (если отсутствует напряжение 5 вольт на USB -соединении или от другого источника питания). Можно подавать питание на этот вывод, или же, если питание подается на 2.1 мм разъем, то можно с этого вывода получить к питающему входному напряжению.
  • 5V . Напряжение на этих выводах регулируется встроенным в плату регулятором напряжения. Плата может быть запитана либо через 2.1 мм разъем питания (7-12 В), через USB -подключение (5 В), или же через вывод VIN (7-12 В) на плате. Подача питания через выводы 5 В или 3.3 В обходит регулятор и может привести к выходу платы из строя. Так делать не рекомендуется.
  • 3V3 . Напряжение 3.3 вольта формируется при помощи встроенного в плату регулятора. Максимальный ток потребления не должен превышать 50 мА.
  • GND . Выводы земли.
  • IOREF . Этот вывод обеспечивает опорное напряжение, с которым работает микроконтроллер. Для правильной конфигурации внешних плат, можно считывать напряжение с этого вывода и выбирать соответсвующий источник питания или включать преобразователи напряжений для работы с 5 В или 3.3 В.

Память

ATmega имеет 256 Кб флеш-памяти для хранения программного кода (из которых 8 Кб используется для загрузчика), 8 Кб ОЗУ, и 4 Кб энергонезависимой памяти (EEPROM может считываться и записываться при помощи библиотеки, которая так и называется — EEPROM ).

Входы и выходы

Каждый из 54 цифровых пинов на Arduino Mega может работать в режиме входа или выхода, используя функции pinMode , digitalWrite и digitalRead . Выходы работают на 5 В. Каждый пин может отдать или принять максимум 40 мА и имеет внутренни подтягивающий резистор 20-50 кОм (отключен по умолчанию). Плюс к этому, некоторые выводы имеют специальные функции:

  • Serial : 0 (RX ) и 1 (TX ); Serial 1: 19 (RX ) и 18 (TX ); Serial 2: 17 (RX ) и 16 (TX ); Serial 3: 15 (RX ) и 14 (TX ). Для отправки данных по последовательному порту с уровнями TTL -логики используется RX , для получения — TX . Пины 0 и 1 также подключены к соответствующим выводам микросхемы преобразователя USB-to-TTL ATmega16U2
  • Внешние прерывания: 2 (прерывание 0), 3 (прерывание 1), 18 (прерывание 5), 19 (прерывание 4), 20 (прерывание 3) и 21 (прерывание 2). Эти выводы могут быть установкой прерывания низким уровнем, по переднему или заднему фронту или перепадом. Более подробно см.описание функции attachInterrupt .
  • PWM : со 2 по 13 и с 44 по 46. Обеспечивают выход 8-битного ШИМ-сигнала, используя функцию analogWrite .
  • SPI : 50 (MISO ), 51 (MOSI ), 52 (SCK ), 53 (SS ). Эти пины поддерживают передачу данных по SPI , используя библиотеку SPI . Пины SPI также могут быть выведены на блок ISCP , который на физическом уровне совместим с Uno , Duemilanove и Diecimilia .
  • LED : 13. Это встроенный в плату светодиод, который подключен к 13 выводу. При значении HIGH на выводе, светодиод включается, при низком — выключается.
  • TWI (I2C ): 20 (SDA ) и 21 (SCL ). Обеспечивает соединение по , используя библиотеку Wire. Расположение этих выводов отличается на платах Duemilanove или Diecimila .

На плате имеется еще пара выводов:

  • AREF . Опорное напряжение для аналоговых входов. Используется с analogReference.
  • RESET. Низкий уровень сигнала на этом входе перезагружает микроконтроллер. Обычно используется дополнительная кнопка сброса на шилдах, которые блокируют кнопку сброса на самой плате Arduino .

Связь

Arduino Mega 2560 имеет несколько различных возможностей для осуществления связи с другим компьютером, другой платой Arduino , или другим микроконтроллером. ATmega2560 имеет 4 аппаратных порта UART для соединения по последовательному порту с TTL -уровнями (5 вольт). ATmega16U2 (ATmega 8U2 на платах 1 и 2 ревизий) перенаправляет один из каналов через USB и предоставляет виртуальный COM -порт для ПО на компьютере (компьютерам, работающим под Windows требуется файл.inf , но компьютеры под Mac OS X и Linux распознают плату в виде COM -порта автоматически). Arduino IDE имеет монитор порта, который позволяет отправлять и получать на плату Arduino простые текстовые данные. Светодиоды RX и TX мигают, сигнализируя о передаче данных через микросхему ATmega8U2/ATmega16U2 и USB -соединение на компьютер (но не при пераче данных через последовательный порт, используя пины 0 и 1).

Библиотека SoftwareSerial позволяет работать с подключением по последовательному порту для любых цифровых выводов Mega 2560 .

ATmega2560 также поддерживает соединение по протоколам I 2 C и SPI . Для упрощения использования обмена по протоколу I 2 C используется библиотека Wire , для соединения по SPI — библиотека с таким же названием SPI .

Программирование

Arduino Mega можно программировать, используя Arduino IDE .

Микроконтроллер ATmega2560 на плате Arduino Mega поставляется с прошитым загрузчиком, который позволяет загружать новый код в микроконтроллер без использования внешнего аппаратного программатора. Загрузчик использует оригинальный протокол STK500 ().

Можно не использовать загрузчик и программировать микроконтроллер через выводы блока ISCP , используя Arduino ISP или аналогичный.

Исходный код прошивки ATmega16U2 (или 8U2 в версиях плат 1 и 2) доступен для скачивания в репозитории Arduino . ATmega16U2/8U2 загружается, используя загрузчик DFU , который активируется следующим образом:

  • На платах верcии 1: замыкаем перемычку на обратной стороне платы (рядом с картой Италии) и перезагружаем 8U2.
  • На платах версии 2 или более поздней: имеется резистор, подтягивающий линию 8U2/16U2 HWB к земле, что облегчает переход в режим DFU . Можно использовать ПО от Atmel под названием Flip (для Windows ) или DFU программатор (Mac OS X и Linux ). Также можно переписать прошивку внешним программатором, используя разъем ISP (перезаписав загрузчик DFU ). Подробности .

Автоматическая (программная перезагрузка)

Вместо того, чтобы физически нажимать клавишу сброса перед загрузкой, Arduino Mega 2560 разработан таким образом, что позволяет программный сброс с подключенного компьютера. Одна из линий, управляющая потоком данных ATmega8U2 - линия DTR , подключена к линии сброса ATmega2560 через конденсатор емкостью 100 нФ. Активация этой линии, используя низкий уровень напряжения позволяет сбросить микросхему. Программное обеспечение Arduino использует эту возможность, позволяя загружать код простым нажатием на кнопку загрузки в среде Arduino . Подача сигнала низкого уровня синхронизировано с началом записи кода, что сокращает таймаут загрузчика.

Это имеет еще одно применение. Когда Mega 2560 подключается к компьютеру под управлением Mac OS X или Linux , каждый раз происходит программная перезагрузка (через USB ). Программа загрузчика на Mega 2560 выполняется примерно полсекунды. В процессе программирования происходит задержка нескольких первых байтов кода, чтобы избежать получение некорректных данных (всех, кроме кода новой программы). Если производится разовая отладка скетча, записанного в платформу, или ввод каких-либо других данных при первом запуске, необходимо убедиться, что программа на компьютере перед передачей данных ожидает в течение секунды.

На Mega2560 имеется возможность отключить линию автоматической перезагрузки разрывом соответствующей линии. Чтобы восстановить линию, необходимо опять соединенить контакт на разрыве. Линия маркирована как «RESET-EN ». Отключить автоматическую перезагрузку также возможно подключив резистор 110 Ом 5 В и данной линией. Подробности .

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

Arduino Mega 2560 имеет самовосстанавливающийся предохранитель, который защищает порты USB вашего компьютера от коротких замыканий и перегрузки по току. Хотя большинство компьютеров обеспечивают свою собственную внутреннюю защиту, предохранитель обеспечивает дополнительный уровень защиты. При токе потребления через USB более чем 500 мА, предохранитель автоматически разрывает соединение, пока короткое замыкание или перегрузка не будут устранены.

Физические характеристики и совместимость с платами расширения

Длина и ширина печатной платы Mega2560 составляют 10,2 и 5.3 см соответственно. Разъем USB и силовой разъем выходят за границы данных размеров. Три отверстия в плате позволяют закрепить ее на поверхности. Расстояние между цифровыми выводами 7 и 8 равняется 0,4 см, хотя между другими выводами оно составляет 0,25 см.

Arduino Mega2560 совместима со всеми платами расширения, разработанными для платформ Uno , Duemilanove или Diecimila . Расположение выводов 0 – 13 (и примыкающих AREF и GND ), аналоговых входов 0 – 5, силового разъема, блока ICSP , порта последовательной передачи UART (выводы 0 и 1) и внешнего прерывания 0 и 1 (выводы 2 и 3) на Mega соответствует расположению на вышеприведенных платформах. Связь SPI может осуществляться через блок ICSP , как на платформах Duemilanove/Diecimila, так и на Mega2560 . Однако расположение выводов (20 и 21) связи I 2 C на платформе Mega не соответствуют расположению тех же выводов (аналоговые входы 4 и 5) на Duemilanove/Diecimila .

Разрабатывая проекты на ардуино, вы рано или поздно столкнетесь с двумя проблемами:

  • необходимость минимизации места;
  • нехватка функциональных портов ввода-вывода.

Первая проблема решается элементарно – с помощью миниатюрных плат: nano, mini, pro mini, micro, digispark attiny 85. Если плата nano и другие мини-платы повторяют функционал обычной Arduino UNO, имея на борту atmega328/168, то платы с Attiny85 и ей подобные подходят для простейших проектов с минимальным функционалом.

Второй же вопрос решается двумя методами:

  1. Расширение числа выводов с помощью сдвиговых регистров, типа 74HC595. К сожалению, этот метод не позволяет использовать ШИМ для расширенных выводов, да и работает этот способ только для выходных сигналов.
  2. Объединение нескольких плат в одну систему и их связь с помощью различных интерфейсов обмена данными; однако этот метод довольно сложен, и не всегда оправдан.

Можно решить этот вопрос иначе – здесь на помощь придет большая плата Arduino mega 2560 или её аналог с поддержкой USB хоста – ADK Arduino, но обо всём по порядку.

Подробнее об Ардуино на Atmega 2560

Начнем с внешнего вида. На изображении выше очевидно, что плата Arduino mega 2560 r3 (актуальная версия на момент написания статьи) в два раза длиннее, чем UNO. Она имеет 54 порта ввода вывода, 15 из которых могут работать, как источник ШИМ сигнала, для плавного регулирования мощности, тока, скорости, яркости, в общем, всего, что можно регулировать с помощью широтно-импульсной модуляции, плюс к этому 16 аналоговых портов могут обрабатывать сигналы с датчиков, использоваться, как цифровой выход.

Для связи между разными устройствами предусмотрено целых 4 UART интерфейса, в их роли выступают выводы 0, 1, 14-19. Один из портов направлен на USB через микроконтроллер ATmega8U2 – он здесь применен вместо привычного по младшим платам USB-TTL контроллера, а его прошивка доступна для свободного скачивания. Для связи с различными дисплеями и другими исполнительными устройствами предусмотрена SPI и I2C технологии.

Технические характеристики

  • Микроконтроллер: ATmega2560
  • Тактовая частота: 16 мГц
  • Напряжение: 5 В
  • Предельные напряжения: 5-20 В
  • Рекомендуемое напряжение питания: 7-12 В
  • Макс. сила тока с одного вывода: 40 мА
  • Цифровые пины: 54
  • Цифровые пины с поддержкой ШИМ: 15
  • Аналоговые входы: 16
  • Flash-память: 256 КБ (8 из них используются загрузчиком)
  • SRAM: 8 КБ
  • EEPROM: 4 КБ

Распиновка платы

Ниже распиновка и назначение выводов – важнейшая информация для разработчика.

Размеры платы Arduino MEGA 2560 – 10.16 см на 5.3 см, против UNO – 6.9 см на 5.3. С одной стороны плата получилась великоватой, с другой – возросшие габариты позволяют удобно работать с мощным микроконтроллером.

Дополнительные изображения и принципиальную схему Меги смотрите на нашем сайте по . Наиболее распространенная сейчас – плата Arduino mega 2560 rev3. В сравнении с первыми ревизиями был проведен ряд доработок, связанных с перезагрузкой платы при прошивке, для достоверности загрузки данных, и другие мелкие апгрейды.

Atmega2560 чип платы Arduino MEGA 2560

Atmega2560 – это очень мощный чип. В распоряжении разработчика целых 256 кб Flash (в ардуино 8 кб занимает загрузчик), 8 кб SRAM и 1 кб EEPROM. Работает ардуино с таким сердцем на частоте 16 мГц, впрочем, как и младшие платы – UNO и многие другие.

Питание платы может осуществляться как от круглого разъёма питания 2.1 мм с плюсом по центру, так и от USB порта, источник выбирается автоматически. Стоит отметить, что при напряжении питания 7-20 вольт, плата работает отлично, а при меньшем, например, 5 вольт, могут возникнуть ситуации с нестабильной работой. Примите это к сведению.

Распиновка процессора

Ниже диаграмма распиновка чипа, для увеличения - нажмите на изображение:

В качестве источника годятся, как сетевые AC/DC преобразователи, такие как для светодиодной ленты (12 В), например, отлично подойдут, так и батареи аккумуляторов или одна ячейка Li-ion аккумулятора с повышающим преобразователем до нужных значений напряжения.

Проекты на основе плате

Использование Arduino MEGA 2560 дало возможность сделать по-настоящему большую и сложную микроконтроллерную систему. Например, есть очень интересный проект, который получил поддержку в РФ и активно развивается – это Arduino Mega Server. Микроконтроллер настолько мощный, что может стать целым сервером для интернета сайтов или облака.

Единственное ограничение на таком сервере – это объём памяти, ведь в качестве накопителя можно использовать micro SD-карты памяти, а Ethernet поддерживает максимальный объём памяти 32 гб.

Arduino Mega Server – это серьезный проект с широким функционалом, в котором поддерживаются все нужные для веб-мастера технологии:

  • HTML;
  • Javascript и другие.

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

С помощью Arduino Mega Server вы можете сделать мощные разветвленные системы автоматизированного управления с удаленным управлением и мониторингом всех параметров или домашнее облачное хранилище. На рисунке ниже вы видите скриншот страницы управления умным домом с официального сайта проекта.

Вот небольшой перечень проектов, реализуемых с Arduino Mega Server:

  1. Умный дом – стал уже классической областью применения ардуино.
  2. Автоматизированная котельная.
  3. Тепличное хозяйство с автоматической поддержкой влажности и солевого состава почвы.
  4. Метеостанция.
  5. И многое другое.

Вы получаете операционную систему для работы с ардуино с компьютера или смартфона по web интерфейсу. Однако стоит осознавать возможности и мощность микроконтроллера Arduino mega 2560, хоть и сама плата мощнее свих предшественников, но по современным меркам морально устарела. Это все те же 8 бит и 8 кб ОЗУ. Скорость, с которой вы скачиваете данные с сервера, будет небольшой, но для веб-страниц вполне хватит.

Комплект для сборки сервера на ардуино

Для сборки проекта Arduino Mega Server нужно иметь минимум три составляющих:

  1. Плату Arduino Mega
  2. Ethernet shied для Ардуино.
  3. Micro SD-карта памяти.

Остальные компоненты набираются в соответствии с возложенными на сервер функциями. Чтобы ознакомиться со всеми нюансами и технической документацией, вы можете скачать все необходимые материалы и библиотеки с официального сайта проекта hi-lab.ru.

На момент написания статьи проект Arduino Mega Server поддерживается на трёх платформах, две из которых превосходят по характеристикам mega 2560:

  • Arduino mega 2560;
  • Arduino Due (32 битный МК, 84 мГц, 512 кб памяти и 96 кб озу разделенных на два банка – 64 кб и 32 кб);
  • Genuino 101 (Intel Quark – в качестве процессора, разрядность 32 бита, 32 мГц, 24 кб ОЗУ).

Другие интересные проекты на Arduino Mega 2560

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

Здесь, для связи со смартфоном, применен специальный шилд, его название «1shield». С помощью официального приложения вы можете подключиться к вашем шилду через WiFi или Bluetooth. Для того чтобы заставить его работать с Arduino, нужно скачать 1shield library – специальная библиотека.

Электронный бармен на ардуино

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

За основу проекта взяли Ардуино Мега, для реализации механизма движения стакана и разлива напитков использованы шаговый двигатель (для продольного перемещения емкости) и сервопривод, для открытия вентилей робота. Ниже приведена примерная схема устройства.

Выводы о плате Ардуино Мега

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

К тому же рассмотренный сегодня Arduino mega 2560 server – это глоток свежего воздуха для всей платформы. Согласитесь, что приятно иметь возможность поставить личный сервер для своих сайтов с поддержкой необходимых технологий и низким энергопотреблением. Не стоит сравнивать эту идею с серверами на старом компьютерном железе и так далее, преимущества очевидны:

  1. Отсутствие шума во время работы, так как нет кулеров системы охлаждения.
  2. Малый объём занимаемого пространства.
  3. Низкая цена.
  4. Малое энергопотребление.

Изучайте микроконтроллеры и внедряйте в повседневную жизнь высокие технологии.

Общие сведения

Arduino Mega 2560 - это устройство на основе микроконтроллера ATmega2560 (). В его состав входит все необходимое для удобной работы с микроконтроллером: 54 цифровых входа/выхода (из которых 15 могут использоваться в качестве ШИМ-выходов), 16 аналоговых входов, 4 UART (аппаратных приемопередатчика для реализации последовательных интерфейсов), кварцевый резонатор на 16 МГц, разъем USB, разъем питания, разъем ICSP для внутрисхемного программирования и кнопка сброса. Для начала работы с устройством достаточно просто подать питание от AC/DC-адаптера или батарейки, либо подключить его к компьютеру посредством USB-кабеля. Arduino Mega совместим с большинством плат расширения, разработанных для Arduino Duemilanove и Diecimila.

Mega 2560 - это обновленная версия Arduino Mega .

Ардуино Mega 2560 отличается от всех предыдущих плат тем, что в нем для преобразования интерфейсов USB-UART вместо микросхемы FTDI используется микроконтроллер ATmega16U2 (ATmega8U2 в версиях платы R1 и R2).

На плате Mega 2560 версии R2 добавлен резистор, подтягивающий к земле линию HWB микроконтроллера 8U2. Подобная мера позволяет упростить процесс обновления прошивки и переход устройства в режим DFU .

Изменения на плате версии R3 перечислены ниже:

  • Распиновка 1.0: добавлены выводы SDA и SCL (возле вывода AREF), а также два новых вывода, расположенных возле вывода RESET. Первый - IOREF - позволяет платам расширения подстраиваться под рабочее напряжение Ардуино. Данный вывод предусмотрен для совместимости плат расширения как с 5В-Ардуино на базе микроконтроллеров AVR, так и с 3.3В-платами Arduino Due. Второй вывод ни к чему не подсоединен и зарезервирован для будущих целей.
  • Улучшена помехоустойчивость цепи сброса.
  • Микроконтроллер ATmega16U2 заменен на 8U2.

Схема, исходный проект и расположение выводов

Характеристики

Микроконтроллер ATmega2560
Рабочее напряжение
Напряжение питания (рекомендуемое) 7-12В
Напряжение питания (предельное) 6-20В
Цифровые входы/выходы 54 (из которых 15 могут использоваться в качестве ШИМ-выходов)
Аналоговые входы 16
Максимальный ток одного вывода 40 мА
Максимальный выходной ток вывода 3.3V 50 мА
Flash-память 256 КБ из которых 8 КБ используются загрузчиком
SRAM 8 КБ
EEPROM 4 КБ
Тактовая частота 16 МГц

Питание

Arduino Mega может быть запитан от USB либо от внешнего источника питания - тип источника выбирается автоматически.

В качестве внешнего источника питания (не USB) может использоваться сетевой AC/DC-адаптер или аккумулятор/батарея. Штекер адаптера (диаметр - 2.1мм, центральный контакт - положительный) необходимо вставить в соответствующий разъем питания на плате. В случае питания от аккумулятора/батареи, ее провода необходимо подсоединить к выводам Gnd и Vin разъема POWER.

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

Выводы питания, расположенные на плате, перечислены ниже:

  • VIN. Напряжение, поступающее в Arduino непосредственно от внешнего источника питания (не связано с 5В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, когда устройство запитано от внешнего адаптера.
  • 5V. На этот вывод поступает напряжение 5В от стабилизатора напряжения на плате, вне независимости от того, как запитано устройство: от адаптера (7 - 12В), от USB (5В) или через вывод VIN (7 - 12В). Запитывать устройство через выводы 5V или 3V3 не рекомендуется, поскольку в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя.
  • 3V3. 3.3В, поступающие от стабилизатора напряжения на плате. Максимальный ток, потребляемый от этого вывода, составляет 50 мА.
  • GND. Выводы земли.
  • IOREF. Этот вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера Ардуино. В зависимости от напряжения, считанного с вывода IOREF, плата расширения может переключиться на соответствующий источник питания либо задействовать преобразователи уровней, что позволит ей работать как с 5В, так и с 3.3В-устройствами.

Память

В микроконтроллере ATmega2560 есть 256 КБ флеш-памяти программ (из которых 8 КБ используются загрузчиком), 8 КБ памяти SRAM и 4 КБ EEPROM (для работы с этой памятью служит библиотека EEPROM).

Входы и выходы

Программирование

ATmega2560 в Arduino Mega выпускается с прошитым загрузчиком, позволяющим загружать в микроконтроллер новые программы без необходимости использования внешнего программатора. Взаимодействие с ним осуществляется по оригинальному протоколу STK500 ( , ).

Исходный код прошивки микроконтроллера ATmega16U2 (либо ATmega8U2 на платах R1 и R2) находится в в репозиториях Ардуино . Прошивка ATmega16U2/8U2 включает в себя DFU-загрузчик (Device Firmware Update), позволяющий обновлять прошивку микроконтроллера. Для активации режима DFU необходимо:

  • На платах версии R1: замкнуть перемычку на обратной стороне платы (возле изображения Италии), после чего сбросить 8U2.
  • На платах версий R2 и выше - для упрощения перехода в режим DFU присутствует резистор, подтягивающий к земле линию HWB микроконтроллера 8U2/16U2.После перехода в DFU-режим для загрузки новой прошивки можно использовать программное обеспечение Atmel"s FLIP (для Windows) или (для Mac OS X и Linux). Альтернативный вариант - прошить микроконтроллер через разъем для внутрисхемного программирования ISP с помощью внешнего программатора, однако в этом случае DFU-загрузчик затрется. Для получения более подробной информации см. эти инструкции от пользователей .

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

Чтобы каждый раз перед загрузкой программы не требовалось нажимать кнопку сброса, Arduino Mega 2560 спроектирован таким образом, который позволяет осуществлять его сброс программно с подключенного компьютера. Один из выводов ATmega8U2, участвующий в управлении потоком данных (DTR), соединен с выводом RESET микроконтроллера ATmega2560 через конденсатор номиналом 100 нФ. Когда на линии DTR появляется ноль, вывод RESET также переходит в низкий уровень на время, достаточное для перезагрузки микроконтроллера. Данная особенность используется для того, чтобы можно было прошивать микроконтроллер всего одним нажатием кнопки в среде программирования Ардуино. Такая архитектура позволяет уменьшить таймаут загрузчика, поскольку процесс прошивки всегда синхронизирован со спадом сигнала на линии DTR.

Однако эта система может приводить и к другим последствиям. При подключении Mega 2560 к компьютерам, работающим на Mac OS X или Linux, его микроконтроллер будет сбрасываться при каждом соединении программного обеспечения с платой. После сброса на Arduino Mega2560 активизируется загрузчик на время около полсекунды. Несмотря на то, что загрузчик запрограммирован игнорировать посторонние данные (т.е. все данные, не касающиеся процесса прошивки новой программы), он может перехватить несколько первых байт данных из посылки, отправляемой плате сразу после установки соединения. Соответственно, если в программе, работающей на Ардуино, предусмотрено получение от компьютера каких-либо настроек или других данных при первом запуске, убедитесь, что программное обеспечение, с которым взаимодействует Ардуино, осуществляет отправку спустя секунду после установки соединения.

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

В Arduino Mega 2560 есть восстанавливаемые предохранители, защищающие USB-порт компьютера от коротких замыканий и перегрузок. Несмотря на то, что большинство компьютеров имеют собственную защиту, такие предохранители обеспечивают дополнительный уровень защиты. Если от USB-порта потребляется ток более 500 мА, предохранитель автоматически разорвет соединение до устранения причин короткого замыкания или перегрузки.

Физические характеристики и совместимость с платами расширения

Максимальная длина и ширина печатной платы Mega2560 составляет 10.2 см и 5.4 см соответственно, с учетом разъема USB и разъема питания, выступающих за пределы платы. Три крепежных отверстия позволяют прикреплять плату к поверхности или корпусу. Обратите внимание, что расстояние между цифровыми выводами 7 и 8 не кратно традиционным 2.54 мм и составляет 4 мм.

Arduino Mega2560 спроектирован таким образом, чтобы быть совместимым с большинством плат расширения для Ардуино Uno, Diecimila и Duemilanove. Для этого цифровые выводы 0 - 13 (а также смежные с ними выводы AREF и GND), аналоговые входы 0 - 5, разъем питания и ICSP-разъем на всех платах расположены одинаково. Кроме того, в перечисленных устройствах линии основного приемопередатчика UART соединены с одними и теми же выводами (0 и 1), как и линии внешних прерываний 0 и 1 (выводы 2 и 3 соответственно). Линии интерфейса SPI выведены на разъем ICSP на обеих платах - как на Mega2560, так и на Duemilanove / Diecimila. Следует иметь ввиду, что на Arduino Mega расположение выводов интерфейса I2C отличается от плат Duemilanove / Diecimila: на Arduino Mega это выводы 20 и 21, а на Duemilanove / Diecimila - аналоговые входы 4 и 5.

Наверное все, кому это интересно, знают про Arduino. Для остальных - удобные для разработки и прототипирования платы на чипе ATMega(в основном).
Прелесть экосистемы Arduino - есть удобные для макетирования платы с разъемами, с большим количеством программируемых входов-выходов, подключаемое по USB к компьютеру. Бесплатное IDE для написания программ и прошивки платы. Солидное количество плат расширения (shield), которые подключаются прямо к разъемам платы. И огромное количество всяких датчиков, сервомоторов, исполнительных устройств и экранов.

Помимо самой ARDUINO (две фирмы - одна в Италии, вторая в США) есть еще большое количество совместимых плат, выпускаемых в Китае.

Сегодня у меня в руках старшая модель платы - Arduino Mega 2560.
Прибыла в коробке и антистатическом пакете.

Судя по надписям - производства Италия.

Вид сверху.

Плата из стеклотекстолита, покрыта синим лаком, надписи - белая краска. Спаяно все очень аккуратно, следов флюса не наблюдается. Мелкие придирки - немного криво посажен кварцевый резонатор.
Подключается к компьютеру при помощи принтерного USB кабеля.
Для подачи внешнего питания есть разъем 2,1 мм. Плюс на внутреннем контакте.

Характеристики

Длина 100 мм
Ширина 53 мм
Высота 15 мм

Микроконтроллер ATmega2560
Рабочее напряжение 5В
Напряжение питания (рекомендуемое) 7-12В
Напряжение питания (предельное) 6-20В
Цифровые входы/выходы 54 (из которых 15 могут использоваться в качестве ШИМ-выходов)
Аналоговые входы 16
Максимальный ток одного вывода 40 мА
Максимальный выходной ток вывода 3.3V 50 мА
Flash-память 256 КБ из которых 8 КБ используются загрузчиком
SRAM 8 КБ
EEPROM 4 КБ
Тактовая частота 16 МГц

Тестирование

Сразу с завода плата приходит с прошитым bootloader и программой blink, которая с разной частотой мигает светодиодом, припаянным к 13 выводу.
На некоторых платах - это частота 1 Гц, на моей - порядка 5 Гц.
Для проверки работоспособности я к Ардуино подключил через сдвиговый регистр 8 светодиодов и поморгал ими. А позже в выходу ШИМ - стрелочный миллиамперметр. Видео ниже

В цикле считаем от 0 до 255

Каждую 1/4 секунды увеличиваем ширину импульса.

Об особенностях подключения. На Маке и linux перед запуском Arduino IDE необходимо подключить плату к компьютеру, потом в Arduino IDE выбрать порт, к которому подключена наша плата.

Итого.
За разумные деньги получил плату с максимальными характеристиками. Рекомендую.

Товар предоставлен для написания обзора магазином. Обзор опубликован в соответствии с п.18 Правил сайта.

Планирую купить +11 Добавить в избранное Обзор понравился +3

В этой инструкции, для примера, рассмотрим начало работы в операционной системе Windows. Для операционных систем Microsoft (Windows 2000/Vista) различия незначительны, они в основном относятся к названиям вкладок в Диспетчере устройств. В прочих операционных средах, таких как Linux, FreeBSD, Mac OS X и т.д, порядок настройки значительно отличается. При необходимости организовать работу с этим программным обеспечением, рекомендуем искать ответы на вопросы на основном сайте разработчика //www.arduino.cc .

В качестве подключаемой платформы возьмём Arduino Uno. Разница с другими платами у неё минимальна.

Кабель для связи с ПК

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

Arduino U no , Arduino M ega 2560 соединяются кабелем со штекерами USB тип А. Такой кабель часто применяется для подключения принтера или сканера.

Arduino Leonardo , Arduino Due для подключения имеют гнездо micro USB тип В.

Arduino Nano, Freeduino Nano подключаются через гнездо mini USB тип B.

Для подключения Freeduino MaxSerial потребуется кабель последовательного порта 9M-9F.

Возникла неполадка : Arduino IDE не запускается.

Способ устранения.

Скорее всего, на компьютере установлена неподходящая виртуальная среда JRE (Java Runtime Environment), необходимая для запуска графических приложений.

Возвратитесь к переустанавке Arduino IDE: на этот раз инсталлятор развернет работу по настройке JRE.

Подключение плат Arduino к компьютеру

После успешного запуска среды разработки Arduino IDE пришло время связать какую-то платформу Arduino с компьютером. Как вы уже знаете, подключение плат Arduino к ПК выполняется через USB-кабель.

Соединив консоль Arduino с ПК, на ней загорится один светодиод «ON», и начнёт мигать другой «L». Это означает, что через кабель подано питание и микроконтроллер начал выполнять предустановленную на заводе программу Blink (мигание).

Остается только узнать, какой номер COM-порта присвоил компьютер нашей плате Arduino , что важно для корректной работы программного обеспечения Arduino IDE с новым устройством.

Номер COM-порта можно узнать в «Диспетчере устройств», вкладка «Порты (COM и LPT)».

На системах Windows скорее всего нашей Arduino Uno с последовательным интерфейсом присвоится один из портов COM1 или COM2. Для Ардуино с USB-контроллером портом ввода будет COM4, COM5, COM6 или выше.

На системах Linux последовательным портом будет USB0 либо USB1.

Высветилось новое устройство Arduino в «Диспетчере устройств» - значит, операционная система распознала нашу плату, нашла для неё подходящий USB-драйвер и присвоила номер её интерфейсу. При совместном подключении ещё одной платы Arduino, ей присвоиться уже другой номер порта.

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

Способы устранения:

  1. Не всунут до конца или поврежден USB-кабель или порт.
  2. Нет драйвера для этой платы Arduino. Если у вас китайская Arduino или от другого неизвестного производителя, попробуйте переустановить USB-драйвер вручную.
  3. Блокировка со стороны антивирусника.
  4. Неисправна плата Arduino.

В открытой Arduino IDE, заходим: Инструменты > Порт > выбираем номер порта COM - сообщаем программе номер порта, к которому подключена микропроцессорная платформа Arduino.

Чтобы у прошивающей программы Arduino IDE не осталось никаких сомнений, с чем ей предстоит работать, указываем тип нашей подключенной платы. Для этого переходим по меню: Инструменты > Плата > выбираем тип своей платы Arduino.

Возникла неполадка: во вкладке Порт нет ни одного COM-порта.

Способ устранения.

Очевидно, нарушено соединение устройства Arduino с компьютером. Верните устойчивое соединение с ПК.

Или нет драйвера. Скачать можно в конце статьи.

Как проверить подключение устройства Arduino

Все числовые данные, поступающее через COM-порт, выводятся в Монитор порта во всё той же удобной графической среде Arduino IDE. Следовательно, нажав соответствующую иконку «Монитор порта» в верхнем правом углу консоли или найдя соответствующий пункт в меню Сервис, по изменяющимся числам в открывшимся окошке можно убедиться, что через USB-кабель передаются данные, а значит, и плата Arduino надежно подключена.

Обратите внимание, что в нижней части окошка Монитора порта выводится информация о скорости работы с COM-портом «19200 baud» (19200 бит/сек). Такая скорость задана по умолчанию в предустановленном скетче на плате Arduino. В этом скетче есть строка Serial.begin(19200), в которой можно задать любую требуемую скорость передачи, но это возможно только при работе через USB-кабель. Ежели передача данных идет через радиоканал Bluetooth, то скорость обмена с COM-портом должна быть задана заранее, точно такой же, какую мы выбираем при отладке Bluetooth-модуля.

Возникла неполадка: невероятно тормозит Arduino IDE при навигации по меню.

Способ устранения.

В Диспетчере устройств, во вкладке Bluetooth Serial отключите Bluetooth-соединение с мобильным телефоном. Все внешние подключения через Bluetooth значительно пожирают объем виртуальной памяти.

Соединение установлено, среда разработки настроена - теперь в ваших руках отлаженный инструмент для прошивки любых микроконтроллеров AVR серии: ATtiny, ATmega, AT90S, AT90CAN, AT90PWM.

В среде разработки Arduino IDE есть много готовых образцов для различных задач, но для проверки отзывчивости платы на перепрошивку достаточно внести небольшие изменения в предустановленную программу Blink (мигание светодиода «L» на плате).

Достаточно в открытом эскизе Blink внести свои изменения в строчке delay(1000), нажать «Вгрузить» и засечь изменения в работе платы Arduino.

Установив delay(500) - светодиод «L» будет мигать в два раза чаще, с задержкой в пол секунды.

Задав delay(100) - светодиод «L» будет загораться и гаснуть в 10 раз быстрее, чем по заводской настройке, то есть каждые 100 миллисекунд.

Возникла неполадка : при загрузке скетча всплыла ошибка вида «not in sync».

Способ устранения.

Значит, подключенная платформа Arduino не была распознана операционной системой. Вернитесь к пунктам установки правильного номера COM-порта и модели платы в меню Инструменты Arduino IDE.

Да и напоследок, если вы купили плату Arduino на каком-нибудь онлайн китайском рынке, то очень часто возникают проблемы при подключении платы – просто она не определяется. Чтобы решить эту проблему умельцами был создан драйвер.

Самодельный трекер для солнечных батарей на Arduino

Понравилась статья? Поделитесь с друзьями!