Модуль Arduino Mega 2560 R3, ATmega16U2

Модуль ARDUINO MEGA 2560 R3 c USB кабелем

• Микроконтроллер ATmega2560
• Тактовая частота: 16 МГц
• Flash память: 256 Кб, из которых 8 Кб использует загрузчик
• ОЗУ память: 8 Кб
• EEPROM память: 4 Кб
• Рабочее напряжение: 5 В
• Напряжение питания: 6 ~ 12 В
• Цифровые входы/выходы: 70
• ШИМ выходы: 15
• Аналоговые входы: 16
• Максимальный ток через каждый вход/выход: 40 мА, рекомендуемый: 20мА
• Максимальный ток для выхода 3.3 В: 50 мА
• Физическая кнопка сброса "Reset"
• USB-разъем: Type-B
• Светодиодная индикация питания и статуса пользовательского вывода D13
• Размеры: 110 x 53 x 15 мм
• Вес: 36 г

В ваших руках

ARDUINO - это широко распространённая платформа разработки с открытым исходным кодом, основанная на простой микроконтроллерной плате ввода-вывода в сочетании с несложной в понимании среде программирования.

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

Открытое программное обеспечение ARDUINO IDE можно загрузить бесплатно уже сейчас (поддерживаются ос Windows, Linux и Mac OS).

Первый взгляд

Сначала была UNO - первая! Но технический прогресс и творческая фантазия не стоят на месте. И пришёл тот час, когда проекты, создаваемые на ARDUINO разрослись в объёме и потребовалось подключать намного больше разнообразных расширений и всевозможных датчиков, чем позволяла UNO. Именно тогда для этих целей была разработана и представлена ARDUINO MEGA.

По сути, MEGA является расширенной версией UNO. Самая последняя Модель MEGA 2560 Rev3 пришла на смену устаревающим MEGA 2560 Rev2, MEGA 2560 и MEGA 1280.

Особенности

Arduino Mega 2560 - это модуль, основанный на микроконтроллере ATmega2560. Плата содержит 70 цифровых контактов, доступных для ввода/вывода (15 из которых могут использоваться как выходы ШИМ), 16 аналоговых ввода, 4 интерфейса стандарта UART, 1 интерфейс IIC/I2C, один интерфейс SPI, кварцевый резонатор на 16 МГц, разъем USB, разъем питания, ICSP коннекторы и кнопку аппаратного сброса "RESET".

Основными отличиями от предшествующих версий стали несколько изменений в элементной базе и размещении контактов. Arduino Mega 2560 R3 теперь содержит два дополнительных вывода SDA и SCL (интерфейс IIC/I2C), расположенных около вывода AREF. Кроме того, в модуле имеется два новых вывода рядом с круглым разъёмом подключения источников питания. Первый из них "IOREF", о котором мы расскажем чуть ниже, и второй, зарезервированный для будущих целей.

В связующем звене, между USB-портом и центральным микроконтроллером, в ранних версиях был установлен ATmega8U2. Теперь его роль выполняет обновлённый ATmega16U2, благодаря которому увеличились скорость работы системы.

Если у вас уже есть расширения для ARDUINO, или вы только планируете их приобрести, не сомневайтесь - Mega2560 имеет на борту два стабилизатора напряжения, преобразующие входное напряжение в постоянные 3,3 В и 5 В. Преобразователи напряжений позволят подключать модули с соответствующим питанием без использования дополнительных понижающих или повышающих преобразователей.

Расположение элементов на плате ARDUINO MEGA 2560 R3

Элементная база ARDUINO MEGA 2560 R3

Интерфейсы передачи данных

• UART (асинхронный последовательный интерфейс): расположен в линейке выводов "коммуникация". Всего их четыре, каждый из которых использует по две линии. Порты обозначены как RX0<-(0), TX0->(1), TX3(14), RX3(15), TX2(16), RX2(17), TX1(18) и RX1(19). Выводы RX (receive) предназначены для приема входящей информации, выводы TX (transfer) предназначены для передачи данных. Подключение других устройств к ним осуществляется по принципу RX->TX, TX->RX. Пины RX0<-(0) и TX0->(1) соединенны с соответствующими контактами USB-связующего микроконтроллера ATmega16U2.

• IIC/I2C (двунаправленный последовательный интерфейс): расположен в разных частях платы. Всего их два, и каждый из них тоже задействует по две линии: последовательные данных - SDA(Serial Data) и шина тактирования SCL(Serial Clock). Выводы первого SDA(20) и SCL(21) располагаются в области "коммуникации". Напомним, что в UNO интерфейс IIC/I2C был реализован путём совмещения с аналоговыми входами А4 и А5.
Контакты второго - два крайних пина рядом с выводом AREF.

• SPI (последовательный периферийный интерфейс): расположен в зоне "цифровых" выводов на пинах MISO(50), MOSI(51), SCK(52), SS(53) и на разъёме ICSP около микроконтроллера ATmega2560. При обмене данными между двумя устройствами главный из них управляем процессом. По линии SS определяется начало и конец сеанса передачи данных. MOSI - выход главного, MISO - вход главного. Обе линии подключаются ко второму устройству по схеме MOSI->MISO и MISO->MOSI. SCK используется для генерации главным устройством синхроимпульсов и называется шиной тактирования.

Расположение и обозначение контактов на MEGA 2560

• ШИМ - 8-битные выводы широтно-импульсной модуляции размещены в области платы с пометкой "PWM" (ШИМ) с цифрами от 2 до 13, а также в секции "цифровые" с номерами от 44 до 46.

• Внешние прерывания: 2 (прерывание 0), 3 (прерывание 1), 18 (прерывание 5), 19 (прерывание 4), 20 (прерывание 3) и 21 (прерывание 2). Используются с функцией attachInterrupt().

• Аналоговые входы с разрешением 10-бит (1024 различных значений) расположены в отдельном блоке контактов и имеют обозначения A0-A15.

• Цифровые входы/выходы размещены в секциях "Analog In", "PWM", "Communication" и "Digital" - двухрядной линейке контактов с обозначением номеров на плате от 22 до 53. Для работы с цифровыми входами/выходами применяются функции pinMode(), digitalWrite() и digitalRead().

• AREF - устанавливает опорное (эталонное) напряжение для аналоговых входов. Контакт используется вместе с функцией analogReference(), которая выполняет пропорциональное сравнение напряжений на выводе AREF с аналоговым входом с генерацией значений 0..1023. Например, опорное напряжение устанавливается 5 В, а на входе аналогового контакта подается 2,5 В. Результатом выполнения сравнения станет полученное значение 512.

• IOREF запараллелен с контактом выходного напряжения 5 В. Сделано это для модулей и расширений, способных самостоятельно подстраиваться под рабочее напряжение системы.

• Вывод "Reset" служит для управляемого аппаратного сброса микроконтроллера. Физическая кнопка "Reset" позволяет выполнить сброс вручную.

• Разъем ICSP внутрисистемного последовательного программирования разработан для непосредственного программирования центрального микроконтроллера ATmega328P (такой же независимый разъём присутствует и для связующего контроллера ATmega16U2) с помощью внешних программаторов.

MEGA 2560 R3 ATmega16U2 распиновка

Принципиальная схема

Принципиальная схема MEGA 2560 R3 ATmega16U2

Питание

ARDUINO MEGA 2560 R3 предоставляет возможность подключать питание тремя способами:

• Питание от USB-порта. Наиболее часто используемый способ при разработке проекта, его тестировании. Стоит помнить, что в законченном устройстве такой вариант может быть неудобен, если вы готовите подвижное изделие.

С целью защиты USB-порта от перегрузки, в энергосхеме ARDUINO MEGA 2560 предусмотрен самовосстанавливающийся предохранитель. Он сработает и разомкнёт цепь питания, если плата потребляет ток более 500мА. Цепь снова замкнётся в том случае, когда ток будет снижен до допустимого порогового значения.

• Через внешний блок питания, подключаемый к круглому разъему. При подборе источника вам необходимо знать, что диаметр центрального "плюсового" контакта 2,1мм. Выходное напряжение должно быть в диапазоне 7-12В. Такой способ удобен в стационарных устройствах.

• Подключив питание к контактам входного напряжения Vin + GND. Данный вариант станет незаменимым для самостоятельно перемещающихся или переносных конструкций. В качестве источника могут выступать компактные аккумуляторы или обычные батарейки. Убедитесь, что подаваемое напряжение находится в диапазоне 7-12В.

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

Выводы 3.3В и 5В можно использовать в роли источника питания для подключаемых дополнительных расширений.

При недостаточном питании Mega2560 способна самостоятельно перезапуститься, если совмещаются модули с высоким энергопотреблением: серво, моторы, большие экранные модули. Лучшим решением будет подключение таких модулей к внешним источникам напряжения. Простого USB-питания может оказаться не достаточно, особенно, когда сервопривод работает с нагрузкой.

Первое подключение

В некоторых младших моделях ARDUINO, таких как Arduino PRO MINI, для работы с платой требовалась подпайка контактов и подключение дополнительных USB/TTL преобразователей сигналов. Модуль имеет все необходимые компоненты для подключения, достаточно соединить его USB-кабелем с компьютером. Произойдет автоматическая установка драйвера и создание виртуального COM-порта. На экране вы увидите сообщение

установка драйвера COM-порта MEGA 2560 R3

На плате загорится зеленый светодиод "ON", информирующий вас о подключенном  питании.

Большинство начинающих знакомство с ARDUINO задаются вопросом, почему же при включении абсолютно новой платы пользовательский светодиод оранжевого цвета "L" мигает. Знайте, что производителем в большинство моделей плат ARDUINO предварительно записывается простой исполняемый код, предназначенный для определения её работоспособности. При отсутствии в памяти микроконтроллера ATmega 2560 какой-либо программы этот светодиод не будет светится.

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

ARDUINO MEGA 2560, как и большинство плат семейства ARDUINO, можно программировать двумя вариантами:

• С помощью уже установленной вами оболочки программирования ARDUINO IDE в паре с USB-подключением. Вшитый в микроконтроллер ATmega2560 загрузчик позволяет загружать код программы через USB-порт без необходимости использования внешних программаторов.
• Внешние программаторы, такие как USB ASP, AVRISP STK500 или другие с поддержкой интерфейса SPI. Применяется протокол STK500. С их помощью можно вносить изменения в код микроконтроллера без использования загрузочной микропрограммы (загрузчика). Для каждого из двух микроконтроллеров, основного ATmega 2560 и связующего ATmega16U2, реализованы собственные независимые 6-пиновые разъемы ICSP. Данный способ поможет вам использовать полный объем доступной памяти.

Написанная в редакторе программа для ARDUINO называется "скетч". Перед тем, как вы начнете писать или загружать скетч в микроконтроллер, необходимо провести настройку редактора ARDUINO IDE и сообщить ему какое устройство вы используете:

• В меню Инструменты (Tools)/Плата (Boards) панели управления редактором выберите ваше устройство: Arduino/Genuino Mega or Mega 2560

• В меню Инструменты (Tools)/Процессор (Processor) следует указать ATmega2560 (Mega 2560)

• И последним шагом указываем созданный при подключении COM-порт. В ОС Windows порты могут быть COM2, COM3 и т.д. На ОС MAC наименование порта может выглядеть как /dev/tty.usbserial-A6006hSc. Выбираем Инструменты (Tools)/Порт (Port) и выделяем COM... (Arduino/Genuino Mega or Mega 2560)

Настройка ARDUINO IDE для MEGA 2560 R3

Все настройки произведены. Теперь вы можете загружать скетч в вашу ARDUINO MEGA 2560. После нажатия кнопки "Загрузить" на плате замигают светодиоды RX и TX, показывающие передачу данных, а на экране компьютера появиться сообщение "Загрузка завершена" (Done Uploading). Ваша MEGA 2560 R3 приступит к выполнению программного кода.

Творите и создавайте!

Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !
© Все права защищены 2019г https://compacttool.ru