Цена:
Программируемый контроллер DFRobot Mega2560 v3.1 [R3], Arduino-совместимый
Вступление
DFRduino Mega2560 - широко известная в Arduino-сообществе и во всём мире микроконтроллераная плата Arduino Mega2560 от разработчика аппаратных платформ DFRobot. Имея небольшой размер и большие возможности, плата пользуется популярностью среди учеников и профессионалов-разработчиков, найдя применение в огромном количестве всевозможных проектов. DFRduino Mega2560 полностью совместима с оригинальной Arduino Mega2560 R3 и средой разработки Arduino Ide с открытым исходным кодом. На её основе уже сконструировано огромное количество разнообразных самодельных электронных устройств и самостоятельных интерактивных объектов, примеры которых, при желании, можно найти в сети Интернет.
Модификация Mega2560 разработана компанией DFRobot. Можно смело предположить, что проектирование платы основывалось на открытых источниках, предоставленных в свободный доступ создателями проекта Arduino.
Совместимость
Модуль DFRduino Mega2560 целиком и полностью совместим со всеми дополняющими платами, расширяющими возможности микроконтроллерной платы, и спроектированными для обычной Uno R3:
Поиск, подбор и коммутация необходимых в проекте дополнений, которых на сегодняшний день выпущено превеликое множество, не доставит вам хлопот.
Особенности
Mega 2560 - это модуль, основанный на микроконтроллере ATmega2560. Плата оснащена 72 цифровыми контактами ввода/вывода. Из них 15 могут использоваться как выходы ШИМ, 16 - как аналоговые входы. Функционал выводов: 4 линии интерфейса UART, 1 линия интерфейса TWI/IIC/I2C, 1 линия интерфейса SPI. В плату интегрированы: кварцевый резонатор на 16 МГц, разъём USB 2.0 тип "В", разъём питания внешнего источника, ICSP коннекторы и кнопка аппаратного перезапуска платы "RESET".
Модуль обладает всеми нововведениями, существующими у оригинальной Mega2560 Rev3. Рядом с контактом AREF добавлены дублирующие выводы SDA и SCL интерфейса TWI/IIC/I2C, обозначение которых нанесено на обратную сторону платы. Присутствует контакт IOREF, необходимый для плат-расширений. Кроме того, в модуле имеется два новых вывода рядом с круглым разъёмом подключения источников питания. Первый из них "IOREF", о котором мы расскажем чуть ниже, и неиспользуемый второй, зарезервированный для будущих целей.
В связующем звене, между USB-портом и центральным микроконтроллером, в ранних версиях Mega1280 был установлен ATmega8U2. Теперь его роль выполняет обновлённый ATmega16U2, благодаря которому увеличились скорость работы системы.
Обзор платы DFRduino Mega2560
Светодиодная индикация:
Принципиальная схема DFRduino Mega2560 v3.0
Интерфейсы передачи данных
• SPI (последовательный периферийный интерфейс): расположен в зоне "цифровых" выводов на пинах MISO(50), MOSI(51), SCK(52), SS(53) и на разъёме ICSP около микроконтроллера ATmega2560. При обмене данными между двумя устройствами главный из них управляем процессом. По линии SS определяется начало и конец сеанса передачи данных. MOSI - выход главного, MISO - вход главного. Обе линии подключаются ко второму устройству по схеме MOSI->MISO и MISO->MOSI. SCK используется для генерации главным устройством синхроимпульсов и называется шиной тактирования.
• TWI/IIC/I2C (двунаправленный последовательный интерфейс): расположен в разных частях платы. Всего их два, и каждый из них тоже задействует по две линии: последовательные данных - SDA(Serial Data) и шина тактирования SCL(Serial Clock). Выводы первого SDA(20) и SCL(21) располагаются в области "коммуникации". Напомним, что в UNO интерфейс IIC/I2C был реализован путём совмещения с аналоговыми входами А4 и А5.
Контакты второго - два крайних пина рядом с выводом AREF.
• 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.
ШИМ
8-битные выводы широтно-импульсной модуляции размещены в области платы с пометкой "PWM" (ШИМ) с цифрами от 2 до 13, а также в секции "цифровые" с номерами от 44 до 46, позволяющие управлять уровнем выходящего напряжения. Используется функция analogWrite().
AREF
Устанавливает опорное или эталонное напряжение для аналоговых входов. Контакт используется вместе с функцией analogReference(), пропорционально сравнивающей напряжений на выводе AREF с аналоговым входом и генерирующая результат в виде значений 0..1023. Например, опорное напряжение устанавливается 5 В, а на входе аналогового контакта подается 2,5 В. Результатом выполнения сравнения станет полученное значение 512.
IOREF
Контакт предназначен для передачи информации подключаемым к плате DFRduino Mega2560 расширениям или другим микроконтроллерам об используемом рабочем напряжении. Вывод совмещён с контактом 5V. Правильно настроенное расширение сможет получить информацию о текущем напряжение и выберет для себя соответствующий источник питания, или задействует преобразователи напряжения 5 В или 3,3 В.
ICSP
Разъём ICSP (внутрисистемное последовательное программирование) даёт возможность непосредственного программирования флеш-памяти центрального микроконтроллера ATmega328P или вспомогательного ATmega16U2 при помощи внешних программаторов (AVR-ISP, STK500 или других с поддержкой интерфейса SPI) без использования внутреннего загрузчика. Применяется протокол STK500. Данный способ применяется в тех случаях, когда требуется полный объём доступной флэш-памяти, или же использование USB-соединения при программировании нецелесообразно/неудобно.
RESET
Вывод "Reset" служит для управляемого аппаратного сброса микроконтроллера. Физическая кнопка "Reset" позволяет выполнить сброс вручную.
Цифровые выводы
Цифровые входы/выходы размещены в секциях "Analog IN", "PWM", "Communication" и "Digital" - двухрядной линейке контактов с обозначением номеров на плате от 22 до 53. Для работы с цифровыми входами/выходами применяются функции pinMode(), digitalWrite() и digitalRead().
Аналоговые выводы
Аналоговые входы с разрешением 10-бит (1024 различных значений) расположены в отдельном блоке контактов "Analog In" и имеют обозначения A0-A15.
Обозначение и назначение выводов DFRduino Mega2560
Питание платы
DFRduino Mega2560 предоставляет возможность подключать питание тремя способами:
• Питание от USB-порта. Наиболее часто используемый способ при разработке проекта, его тестировании. Стоит помнить, что в законченном устройстве такой вариант может быть неудобен, если вы готовите подвижное изделие.
• Через внешний блок питания, подключаемый к круглому разъему. При подборе источника вам необходимо знать, что диаметр центрального "плюсового" контакта 2,1мм, диаметр внешнего "минусового" контакта - 5,5мм. Выходное напряжение должно быть в диапазоне 7-12В. Такой способ удобен в стационарных устройствах.
• Подключив питание к контактам входного напряжения Vin + GND. Данный вариант станет незаменимым для передвижных или переносных конструкций. В качестве источника могут выступать компактные аккумуляторы или обычные батарейки. Убедитесь, что подаваемое напряжение находится в диапазоне 7-12В.
При одновременном подключении нескольких источников питания, устройство автоматически определит и переключится на наибольшее напряжение.
Выводы стабилизированного напряжения 3.3В и 5В допускается использовать в роли источника питания для подключаемых дополнительных расширений.
При недостаточном питании Mega2560 способна самостоятельно перезапуститься, если совмещаются модули с высоким энергопотреблением: серво, моторы, большие экранные модули. Лучшим решением будет подключение таких модулей к внешним источникам напряжения. Простого USB-питания может оказаться не достаточно, особенно, когда сервопривод работает с нагрузкой.
Защита USB-порта
С целью защиты USB-порта от перегрузки, в энергосхеме ARDUINO MEGA 2560 предусмотрен самовосстанавливающийся предохранитель. Он сработает и разомкнёт цепь питания, если плата потребляет ток более 500мА. Цепь снова замкнётся в том случае, когда ток будет снижен до допустимого порогового значения.
Первое подключение
Если вы ранее не пользовались ARDUINO, прежде всего необходимо загрузить бесплатную оболочку для программирования ARDUINO IDE с сайта разработчика и установить ее на ваш компьютер. Загрузить сейчас.
Ваше устройство - самодостаточное изделие, сразу готовое к работе. В ОС Linux плата распознается автоматически, для ОС Windows необходим inf-файл, который присутствует в оболочке программирования ARDUINO IDE. Ничего дополнительно устанавливать не нужно! Модуль DFRduino Mega2560 имеет все необходимые компоненты для подключения, просто соедините его USB-кабелем с компьютером.
Примечание! Предварительно убедитесь в исправности кабеля. В противном случае последствия при программировании могут быть непредсказуемы.
Произойдет автоматическая установка драйвера и создание виртуального COM-порта. На экране вы увидите сообщение
На плате загорится красный светодиод "ON", информирующий вас о подключенном питании.
Программирование
Mega2560, как и большинство плат семейства ARDUINO, допускает программирование следующими вариантами:
• С помощью уже установленной вами оболочки программирования ARDUINO IDE в паре с USB-подключением. Вшитый в микроконтроллер ATmega2560 загрузчик позволяет загружать код программы через USB-порт без необходимости использования внешних программаторов.
• Внешние программаторы, такие как AVR-ISP, STK500 или другие с поддержкой интерфейса SPI. С их помощью можно вносить изменения в код микроконтроллера без использования загрузочной микропрограммы (загрузчика). Для каждого из двух микроконтроллеров, основного 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)
Теперь все настроено для загрузки скетча в вашу DFRduino Uno. Попробуйте записать в память контроллера самый простой скетч, мигающий единственным доступным светодиодом, этакий пример "Привет, мир!":
int ledPin = 13; // Определяем цифровой контакт светодиода
void setup()
{
pinMode(ledPin, OUTPUT); // Устанавливаем для контакта режим вывода информации
}
void loop()
{
digitalWrite(ledPin, HIGH); // Включаем светодиод
delay(1000); // Ждём 1 секунду
digitalWrite(ledPin, LOW); // Выключаем светодиод
delay(1000); // Ждём 1 секунду
}
После нажатия кнопки "Загрузить" на плате замигают светодиоды RX и TX, показывающие передачу данных, а на экране компьютера появиться сообщение "Загрузка завершена" (Done Uploading). Процесс записи завершён и контроллер переключился в режим выполнения загруженного кода.
Arduino IDE обладает большой библиотекой примеров для начинающих. Найти их можно в самом редакторе: "Файл -> Примеры".
г. Москва, Пятницкое ш. д. 18, пав. 566
zakaz@compacttool.ru
8-495-752-55-22
Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !
© Все права защищены 2015 - 2024г https://compacttool.ru