When I first got my Due in the mail I searched the web for a simple overview to help me better understand what new features Arduino is bringing to the table with the new development board. After finding next to nothing I decided to write my own general overview post in hopes that it would help out someone in a situation similar to mine. The Arduino Due is the first ARM-based development board from Arduino and features a powerful 32bit CortexM3 microcontroller. The board is fully programmable through the familiar Arduino IDE. The processing power is significantly increased over a traditional 8bit Arduino board and the coding language was kept very similar to what we are familiar with, making the transition to the new board very easy for most.
The Arduino Due shares a similar form factor to that of an Arduino Mega with the due having a few more pins, and two micro-USB ports instead of one. The Due sports 54 digital I/O pins of which 12 are PWM enabled, 12 Analog inputs, 4 UART’s, a USB-OTG capable connection, 2 DACs, 2 TWI, a JTAG header and SPI connector. An 84MHz clock fuels the CortexM3 engine and the boards operating voltage is 3.3v unlike the previous Uno, Leonardo, and Mega which all run on 5v. The Due is able to handle input voltages from 6-20V, but the recommended input voltage is between 7 and 12 volts. The total DC Current output on all I/O pins is 130mA while the current for the 3.3v and 5v pins is limited to 800mA. Because of the Atmel SAM3X8E’s 3.3v limit, existing Arduino shields that utilize 5v won’t work properly on the Due. Shields that utilize Arduino’s official R3 layout will work out of the box however.
It is important to note that using a shield that presents an input voltage greater than 3.3v to any of the I/O pins will damage that pin and could possibly (most likely) kill your Due all together. If you are unsure about a shield, I recommend that you fully read the shields data sheet, website documentation or contact the shields manufacturer before attempting to use it on your Due. Users have 512KB of flash memory to store their code in as well as two banks of SRAM totaling 96KB (Split into 64KB and 32KB). Compiling code for the Due is handled in the latest version of the Arduino IDE : Version 1.5, which will replace Arduino 1.0.1 after the testing phase completes.