Arduino Mega 2560 is a genuine Arduino controller board built around the mighty ATmega2560 microcontroller. It’s the right choice if your project need plenty of pins or if the program is complex enough to run out of Arduino Uno memory. The 16 MHz 8-bit AVR processor with 256 KB of flash memory and 70 GPIO pins will suffice even industrial applications.
You can program Arduino Mega 2560 with a toolset of your choice:
The tools are cross-platform. You can work with the board on Windows, macOS, and Linux.
All you need to upload a program and communicate with the computer is a good old Type-B USB cable.
Arduino Mega 2560 is an almost drop-in extension of boards like Arduino Uno or Iskra Neo. The physical layout of one half matches the so-called Rev3 standard. The native board voltage is 5 volts. This provides broad compatibility with various Arduino Shields and other extension modules.
If a module is marked as compatible with Arduino, you can be almost sure it is compatible with Arduino Mega 2560.
The board exposes 70 GPIO pins to communicate with other hardware. Among them you’ll find some ports having additional functions besides the simple digital voltage reading and writing:
Arduino Mega 2560 can be powered using a USB connection, batteries, or a conventional DC power supply which outputs anything in 7 to 12 V range. The source is detected automatically.
The board exposes the following power pins:
Vinprovides the same voltage that is used to power the platform. When connected via USB, this is 5 V.
5Vprovides 5 V regardless of the input voltage. This is the logic level of the processor. You can draw up to 800 mA from this pin.
3.3Valways provides 3.3 V. Some hardware requires this level, and you can draw up to 50 mA here.
GND-- the common ground.
The platform comes equipped with 256 KB of flash memory -- 8 KB of this memory is reserved for the bootloader, which allows you to flash Arduino Mega from a computer via USB. Flash memory is dedicated to storing the program and associated resources and is not intended to be changed in runtime. Although 256 KB may sound miserable these days, it is much memory for a microcontroller as programs for MCUs are small in scope and space-efficient.
There is 8 KB of SRAM memory. This is the platform’s operational memory and is used to store temporary data such as program variables. SRAM-memory is cleared every time the platform powers down.
The board also provides 4 KB of non-volatile EEPROM memory for long-term data storage. It is analogous to a conventional computer's hard drive.
Arduino Mega 2560 mirrors the first hardware serial to talk to PC via USB. An auxiliary microcontroller (ATmega16U2) is used as a bridge between that hardware serial and the physical USB line. This makes program uploads reliable because the main program is decoupled from the flashing jobs: if it hangs, it won’t hurt. On the other side, this effectively reserves pins 0 and 1 bound to serial for flashing.
From the computer’s point of view, Arduino Mega is a serial device. For example, on Windows, it is exposed as a virtual COM port.
The board has a fuse that protects your computer's USB ports from overvoltage and short circuits. Although most computers have their own means of protection, the fuse provides additional protection. It breaks the connection if more than 500 mA is fed into the USB port, and will restore it after the situation is normalized.
The size of the board is 102 × 53 mm (4.02" × 2.09"). Connectors for external power supply and USB protrude a couple of millimeters beyond the indicated boundaries. The board provides space for mounting with screws. The distance between the contacts is the standard 0.1″ (2.54 mm), but in the case of the 7th and 8th contact - the gap is 0.16″.