Skip to content

Board: Arduino Mega2560

Hinnerk van Bruinehsen edited this page Aug 22, 2014 · 9 revisions

Overview

The Arduino Mega2560 is one of the larger Arduino boards. It is based on Atmel's AVR architecture and sports an ATmega2560 MCU. It is like many Arduinos extensible by using shields.

NOTE: In case you are wondering if flashing RIOT on your Arduino Mega2560 will overwrite the Arduino bootloader: you can be reassured. After flashing RIOT you can without any intermediate steps just go over to flashing Arduino sketches again.

Hardware

Arduino Mega2560

MCU

MCU ATmega2560
Family AVR/ATmega
Vendor Atmel
RAM 8Kb
Flash 256Kb
Frequency 16MHz
Timers 6 (2x 8bit, 4x 16bit)
ADCs 14 analog input pins (10bit resolution
UARTs 4
SPIs 1
I2Cs 1 (called TWI)
Vcc 5.0V
Datasheet / Reference Manual Datasheet and Reference Manual
Board Manual Board Manual

Flashing RIOT on the Arduino Mega2560 is quite straight forward, just connect your Arduino Mega2560 using the programming port to your host computer and type:

make BOARD=arduino-mega2560 flash

This should take care of everything!

We use the open avrdude tool to write the new code into the ATmega2560's flash

State

While there is an open [pull request] (https://github.com/RIOT-OS/RIOT/pull/1420), there are still some parts missing:

  • Timer implementation needs love (ideally simulate a 32bit timer by adding an overflow counter to the implementation)
  • LPM driver missing
  • GPIO driver missing
  • SPI/I2C/TWI driver missing
  • ADC driver missing
Clone this wiki locally