Ultimate Arduino MEGA 2560 Hardware Manual Web Links

On this page are web links from the Ultimate Arduino MEGA 2560 Hardware Manual for easy access to referenced websites. Find the main Arduino website at www.arduino.cc

The book has a web page at Elektor for the Ultimate Arduino MEGA 2560 Hardware Manual.

Scroll down to find the chapter and section that contains the link that you are looking for, or use the links directly below to jump to the desired chapter on this page.

Chapter 1 | Chapter 2 | Chapter 3 | Chapter 4 | Chapter 5 | Chapter 6 | Chapter 7 | Chapter 8 | Chapter 9

Chapter 1

1.1.3 Uses of the Arduino MEGA 2560

Wiring project wiring.org.co

Arduino Project Hub create.arduino.cc/projecthub ICSP Header

Those readers interested in learning the C language to program Arduino boards may be interested in the book C Programming with Arduino ISBN 978-1-907920-46-2

1.1.5 Programming

The Arduino IDE is free to download from www.arduino.cc/en/software Prototype Shields

Figure 1.8 on the next page shows the Arduino MEGA PROTO shield REV3 that has the product code A000080 (store.arduino.cc/arduino-mega-proto-shield-rev3-pcb).

Prototype shields with the Arduino Uno form factor are also available, such as the PROTO Shield REV3, product code TSX00083 (store.arduino.cc/proto-shield-rev3-uno-size). Custom PCB

KiCad (www.kicad.org) is an open-source EDA (Electronic Design Automation) software package that can be used to draw circuit diagrams and lay out PCBs.

1.1.7 Open-Source and Licensing

See creativecommons.org/licenses/ for more information on the various Creative Commons licenses.

For more details, see the page www.arduino.cc/en/Trademark on the Arduino website.

1.1.8 Third Party Compatible Boards

For more information on the various spin-off boards including official boards, clones, derivatives, compatibles and even counterfeits, see the article blog.arduino.cc/2013/07/10/send-in-the-clones/ on the Arduino blog.

1.1.9 Build Quality, Warranty and Safety

A full list of official Arduino boards can be found at www.arduino.cc/en/Main/Products on the Arduino website.

For more information on Arduino board compliance and for the warranty statement, see www.arduino.cc/en/Main/warranty

1.2.1 USB Bridge Firmware

The ATmega16U2 microcontroller and its firmware replaces the FT232RL USB to UART bridge chip from FTDI (ftdichip.com) found on the original Arduino MEGA before the Arduino MEGA 2560.

1.6.1 Installing Software

Help documentation on installing the Arduino IDE software is available for Windows, MAC OS X and Linux. Follow the links below for your operating system. Windows

www.arduino.cc/en/Guide/Windows MAC OS X

www.arduino.cc/en/Guide/macOS Linux


1.6.2 Getting Started, Examples and Reference

Getting started guides, examples and a software reference are all available on the Arduino website. Getting started guides and examples are a great way for new Arduino users to learn about building projects with Arduino and learning to write sketches. Getting Started Guides

Links to getting started guides for any Arduino board can be found at:

Arduino MEGA 2560 specific getting started guide:
www.arduino.cc/en/Guide/ArduinoMega2560 Arduino Examples and Tutorials

An index to tutorials and examples at www.arduino.cc/en/Tutorial/HomePage on the Arduino website provides links to various categories. Building Breadboard Circuits

A tutorial series at startingelectronics.org/beginners/start-electronics-now/ shows how to build breadboard circuits with some Arduino examples. Arduino Software Reference

Arduino language and library reference: www.arduino.cc/reference/en/

1.6.3 Getting Help

Find the Arduino Help Center at support.arduino.cc/hc/en-us

The Arduino wiki at playground.arduino.cc is a user contributed collection of documentation and other useful information.

The Arduino Forum at forum.arduino.cc is a place where anyone can post a question that will be answered by community members. The forum can also be searched for other user’s questions which may already have answers. It is also a place where more experienced Arduino users can help others by answering questions.

1.6.4 Related Open-Source Projects Fritzing

Fritzing, found at fritzing.org on the web, provide a software package that can be used to draw Arduino breadboard circuits and then turn them into custom made printed circuit boards or PCBs. Wiring

Find the Wiring project at wiring.org.co on the web. Processing

Processing, found at processing.org on the web, is a programming language based on Java, and a software package for developing applications on a computer.


Find the PhysicalPixel tutorial on the Arduino website at www.arduino.cc/en/Tutorial/BuiltInExamples/PhysicalPixel

1.6.5 Arduino MEGA 2560 on the Web

Find the Arduino MEGA 2560 web page at store.arduino.cc/arduino-mega-2560-rev3 which includes basic technical information and links to the circuit diagram (schematic) and board build files in electronic format.

1.7.1 Arduino DUE vs. Arduino MEGA 2560

More information on the Arduino DUE can be found at store.arduino.cc/arduino-due

1.7.2 Arduino MEGA ADK vs. Arduino MEGA 2560

For more information on the Arduino MEGA ADK, see store.arduino.cc/arduino-mega-adk-rev3

Chapter 2

2.2 Atmel, Microchip and AVR

Microchip (www.microchip.com) EEPROM Programming

www.arduino.cc/en/Reference/EEPROM is the library reference for using the EEPROM in sketches. SD Cards (SPI Interface)

www.arduino.cc/en/Reference/SDCardNotes contains more information from Arduino on using SD cards.

See www.arduino.cc/en/Reference/SD for more information on the Arduino SD card library. SPI Devices

See the library reference www.arduino.cc/en/Reference/SPI for more information on the SPI library. TWI and I²C Devices

See the library reference www.arduino.cc/en/Reference/Wire for more information on the Wire library. Analog In Example Sketch

The corresponding tutorial page for the AnalogReadSerial example sketch can be found at www.arduino.cc/en/Tutorial/BuiltInExamples/AnalogReadSerial on the Arduino website, which shows how to connect a potentiometer to A0 to vary the voltage on this pin.

2.7.6 AREF Pin

For more information on the analogReference() function, see www.arduino.cc/reference/en/language/functions/analog-io/analogreference/

2.8.3 ATmega16u2 ICSP Header

More information on DFU programming can be found on the Arduino website at www.arduino.cc/en/Hacking/DFUProgramming8U2 and in section 5.1 of chapter 5 of this book.

2.8.4 ICSP Programming Resources

The links that follow provide more information on the Atmel-ICE, Microchip Studio and C programming of Arduino boards using Microchip Studio. Also see chapter 5. Links to older Atmel/Microchip programmers that are now redundant are also listed for interest.

Atmel-ICE – www.microchip.com/DevelopmentTools/ProductDetails/atatmel-ice

Microchip Studio – www.microchip.com/en-us/development-tools-tools-and-software/microchip-studio-for-avr-and-sam-devices

C Programming – wspublishing.net/avr-c/

Redundant no longer for sale programmers:

AVRISP mkII – www.microchip.com/developmenttools/ProductDetails/atavrisp2

JTAGICE3 – www.microchip.com/DevelopmentTools/ProductDetails/PartNO/ATJTAGICE3

2.8.5 Using an Arduino as an In-System Programmer

Find more information on the Arduino website at www.arduino.cc/en/Tutorial/BuiltInExamples/ArduinoISP

2.9.4 ICSP SPI Pins and Reset

When using the SPI bus, the SS pin (pin 53) must be kept as an output or the SPI interface will not work, as specified at www.arduino.cc/en/Reference/Ethernet for use with the Ethernet shield.

Chapter 3

3.2.2 ATmega2560 Alternate Pin Functions

More information on each pin function can be found in the ATmega2560 datasheet from the page www.microchip.com/wwwproducts/en/ATmega2560 on the Microchip website.

3.3.1 Digital Input / Output Pins Pins as Outputs
Switching Heavier Loads with Transistors and Relays

The ON Semiconductor (www.onsemi.com) datasheet for a PN2222 shows the absolute maximum collector current of this device to be 600mA which means that it can safely and reliably switch a load of between 100mA to about 400mA, which enables it to be used with a number of small DC devices. It could even be used to drive a device that draws up to 500mA if needed.

For more details on interfacing Arduino boards and microcontrollers, refer to the appropriate texts or other sources such as the Interfacing With Hardware page playground.arduino.cc/Main/InterfacingWithHardware/ in the playground area on the Arduino website. Pins as Outputs
Switching Heavier Loads with Transistors and Relays

For more details on interfacing Arduino boards and microcontrollers, refer to the appropriate texts or other sources such as the Interfacing With Hardware page playground.arduino.cc/Main/InterfacingWithHardware in the playground area on the Arduino website. Pins as Inputs
Pull-down Resistor

Find the tutorial page at www.arduino.cc/en/Tutorial/BuiltInExamples/DigitalReadSerial on the Arduino website.

3.3.2 PWM Pins

( Taken from: www.arduino.cc/reference/en/language/functions/analog-io/analogwrite/ )

3.3.3 Analog Pins

Refer to www.arduino.cc/reference/en/language/functions/analog-io/analogread/ for information on using the analogRead() function to read values from the analog input pins. Accessing TWI Devices in Software

Use the Wire library in a sketch to access TWI bus devices by including the Wire.h header file in a sketch, and using the Wire library object and functions found in the reference www.arduino.cc/en/Reference/Wire on the Arduino website. Accessing SPI Devices in Software

Use the SPI object and functions from www.arduino.cc/en/Reference/SPI – the SPI reference page on the Arduino website. Accessing SD Cards in Software

Go to www.arduino.cc/en/Reference/SD to find the SD card reference on the Arduino website. Hardware Serial Port
Using Serial Port 1, Serial Port 2 and Serial Port 3

Basic Breakout (www.sparkfun.com/products/9716). Again, TX and RX are crossed, and GND is connected between the Arduino and adapter boards.

Click the download link on the Tera Term home page at ttssh2.osdn.jp/index.html.en which will take you to a page with a link to the latest version of Tera Term.

Serial Port Reference

Go to www.arduino.cc/reference/en/language/functions/communication/serial/ for the serial port library reference. Software Serial Port

Go to www.arduino.cc/en/Reference/SoftwareSerial on the Arduino website for more information on the SoftwareSerial library.

3.3.10 AREF Pin

The Arduino documentation at www.arduino.cc/reference/en/language/functions/analog-io/analogreference/ gives the input voltage range of the AREF pin as 0V to 5V, however the ATmega2560 datasheet gives the AREF voltage range as 1V to 5V.

3.8 Finding the Datasheets

3.8.1 ATmega2560 Datasheet

Find the ATmega2560 datasheet at www.microchip.com/wwwproducts/en/ATmega2560 on the Microchip website.

3.8.2 ATmega16U2 Datasheet

Go to www.microchip.com/wwwproducts/en/ATmega16u2 to find the datasheet for the ATmega16U2 microcontroller used as the USB to serial bridge chip on Arduino MEGA 2560 boards.

Chapter 4

4.1.1 Operating Voltage

STMicroelectronics (www.st.com)

ON Semiconductor (www.onsemi.com)

Diodes Incorporated (www.diodes.com)

Chapter 5

5.1 Updating the USB to Serial Bridge Firmware using DFU

For Windows computers, download the FLIP (Flexible In-system Programmer) software from Microchip at www.microchip.com/developmenttools/ProductDetails/FLIP

For additional information on Arduino DFU programming and for DFU programming using Linux and Mac, see www.arduino.cc/en/Hacking/DFUProgramming8U2 on the Arduino website.

5.2 Microchip Studio

Find more information about the Atmel-ICE at www.microchip.com/developmenttools/ProductDetails/atatmel-ice on the Microchip website.

To install Microchip Studio, go to www.microchip.com/en-us/development-tools-tools-and-software/microchip-studio-for-avr-and-sam-devices on the Microchip website.

5.3.2 DFU Bootloader Firmware

At GitHub github.com/arduino/ArduinoCore-avr/tree/master/firmwares/atmegaxxu2/arduino-usbdfu is the link to the same source code.

5.3.3 USB to Serial Bridge Firmware

The same source code and HEX files can be found on GitHub at github.com/arduino/ArduinoCore-avr/tree/master/firmwares/atmegaxxu2/arduino-usbserial which contains the latest version of this code and HEX files.

5.4.2 Bootloader Firmware – stk500v2

The same files can be found at github.com/arduino/ArduinoCore-avr/tree/master/bootloaders/stk500v2 on GitHub.

5.5 The RESET-EN Solder Jumper

For the Atmel-ICE, this information can be found in the Atmel-ICE User Guide that is available for download from the Microchip website at www.microchip.com/DevelopmentTools/ProductDetails/atatmel-ice

5.6 Alternative Firmware Programming Methods

Using an Arduino as an ISP (In-system programmer) is described on the Arduino website at www.arduino.cc/en/Tutorial/ArduinoISP

Refer to www.arduino.cc/en/Hacking/DFUProgramming8U2 for additional information on DFU programming the ATmega16u2.

Chapter 6

6.4 Getting an Electronic Copy of the Circuit Diagram

Find the circuit diagram in PDF format, and the circuit diagram and PCB design file in Eagle format at store.arduino.cc/arduino-mega-2560-rev3 for the Arduino MEGA 2560. Look under the DOCUMENTATION tab for these files.

To view the files in Eagle format, the Eagle EDA software package will need to be downloaded from www.autodesk.com/products/eagle/free-download and installed.

Chapter 7

7.4 Waveform Patterns and Measurement

PicoScope 2000 series digital PC oscilloscope, model number 2205A used for oscilloscope measurements.

Chapter 8

8.8 Drill Template and KiCad Template

The drill template file as well as the KiCad template file can be found on the Resources page of this website.

The KiCad software package can be found at www.kicad.org where it can be downloaded free of charge and unrestricted.

Chapter 9

9.5.2 Ethernet Shield Example

Information on this shield can be found at: store.arduino.cc/arduino-ethernet-shield-2