Arduino Mega 2560: процессор, распиновка, проекты

Обзор Aduino Mega 2560 - большого и мощного микроконтроллера, который помогает решить вопрос с нехваткой функциональных портов ввода-вывода.

Проблема нехватки ресурсов

Разрабатывая проекты на Ардуино, вы рано или поздно столкнетесь с двумя проблемами: необходимость минимизации места и нехватка функциональных портов ввода-вывода.

Первая проблема решается элементарно – с помощью миниатюрных плат:

Если плата nano и другие мини-платы повторяют функционал обычной Arduino UNO, имея на борту atmega328 или atmega168, то платы с Attiny85 и ей подобные подходят для простейших проектов с минимальным функционалом.

Arduino Mega 2560
Arduino Mega 2560

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

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

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

Плата Mega 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.

Размеры платы Arduino Mega 2560 - 10.16 x 5.3 см, против UNO – 6.9 x 5.3 см.

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

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

Чип Atmega2560

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;
  • CSS;
  • 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-карта памяти.

Остальные компоненты набираются в соответствии с возложенными на сервер функциями.

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

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

Интересные проекты

Системы управления умным домом набирают популярность.

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

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

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

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

Ниже приведена примерная схема устройства.

Заключение

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

Однако век ардуино еще будет долго продолжаться, поскольку это простая платформа для веселого освоения электроники и микроконтроллеров.

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

Не стоит сравнивать эту идею с серверами на старом компьютерном железе и так далее, преимущества очевидны:

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

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

23 ноября 2017 в 22:57 | Обновлено 21 января 2021 в 21:30 (редакция)
Опубликовано:
Статьи,

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

Ваш E-mail не будет никому виден. Обязательные поля отмечены *