Arduino Mega

1. Arduino Mega
2. Технические характеристики
3. Питание и память
4. Входы и выходы
5. Соединение с компьютером

## Arduino Mega 2560

Плата **Arduino Mega 2560** предназначена для создания проектов, в которых не хватает возможностей обычных Arduino Uno. В этом устройстве максимальное из всех плат семейства Arduino количество пинов и расширенный набор интерфейсов. Также у Arduino Mega больше встроенной памяти.

## Питание

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

Внешнее (не USB) питание может подаваться либо от AC/DC адаптера, либо от батареи. Адаптер может быть подключен с помощью 2,1 мм разъема питания с положительным контактом в центре. Питание от батареи может быть подано на выводы Vin и GND разъема POWER.

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

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

* Vin. Вход питания платы при использовании внешнего источника питания (используется при отсутствии 5 вольт от USB подключения или от другого регулируемого источника питания). Вы можете подать питание через этот вывод, или, если напряжение питания подается через разъем питания, то это напряжение 5В будет доступно и на этом выводе.
* 5V. С этого вывода можно взять регулируемое напряжение 5В с выхода регулятора на плате. Плата может питаться через разъем питания (7–12В), через USB разъем (5В) или через вывод Vin на плате (7–12В). Подача напряжения через выводы 5V и 3.3V обходит регулятор и может повредить плату. Поэтому не советуем подавать питание на плату через эти выводы.
* 3V3. Питание 3,3 вольта, выдаваемое регулятором на плате. Максимальный ток 50 мА.
* GND. Выводы земли.
* IOREF. Этот вывод обеспечивает опорное напряжение, с которым работает микроконтроллер. Правильно, сконфигурированная плата расширения, может прочитать напряжение на выводе IOREF и выбрать подходящий источник питания или перевести буферы выходов для работы с напряжением либо 5В, либо 3,3В.

### Память

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

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

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

### Порты ввода/вывода

* последовательный порт: 0 (RX) и 1 (TX); последовательный порт 1: 19 (RX) и 18 (TX); последовательный порт 2: 17 (RX) и 16 (TX); последовательный порт 3: 15 (RX) и 14 (TX). Выводы используются для приема (RX) и передачи (TX) последовательных данных с TTL уровнями. Выводы 0 и 1 также подключены к соответствующим выводам преобразователя USB–TTL на ATmega16U2;
* внешние прерывания: 2 (прерывание 0), 3 (прерывание 1), 18 (прерывание 5), 19 (прерывание 4), 20 (прерывание 3) и 21 (прерывание 2). Эти выводы могут быть сконфигурированы для вызова прерывания по фронту или по спаду импульса или по изменению уровня на выводе. Смотрите работу с прерываниями на Arduino для более подробной информации;
* ШИМ: выводы со 2 по 13 и с 44 по 46. Обеспечивают 8-битный ШИМ выход с помощью функции `analogWrite()`;
* SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Эти выводы поддерживают связь через SPI с помощью соответствующей библиотеки. SPI выводы также подключены к разъему ICSP, который физически совместим с платами Arduino/Genuino Uno и старыми платами Arduino Duemilanove и Diecimila;
* светодиод: 13. Встроенный светодиод подключен к цифровому выводу 13. При высоком уровне на выводе светодиод загорается, при низком – гаснет;
* TWI: 20 (SDA) и 21 (SCL). Поддерживают связь через TWI с помощью библиотеки `Wire`. Обратите внимание, что эти выводы не совпадают по расположению с аналогичными выводами на старых платах Arduino Duemilanove и Diecimila.

* Arduino Mega 2560 обладает 16 аналоговыми входами, каждый из которых обеспечивает 10-битное разрешение (т.е. 1024 разных значений). По умолчанию они измеряют напряжение от 0 до 5 вольт, хотя можно изменить верхнюю границу их диапазона, используя вывод AREF и функцию `analogReference()`. И еще пара выводов на плате:
* AREF. Опорное напряжение для аналоговых входов. Используется совместно с `analogReference()`;
* Reset. Низкий уровень на этом выводе приводит к перезагрузке микроконтроллера. Обычно используется для добавления кнопки сброса на платы расширения, закрывающей доступ к кнопке сброса на самой плате Arduino.

## Соединение с компьютером

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