The Arduino Due is the most powerful board of the Arduino family. It is the first board in the Arduino series which is based on the ARM microcontroller. It consists of a 32-bit ARM CORTEX M3 Processor Atmel SAM3X8E. Arduino Due has a lot of features than any other Arduino board. It has extraordinary processing speed which contributes to making this board the ultimate choice for advanced applications. The Arduino DUE board is developed on the ARM controller series whereas other Arduino boards are developed on the ATMEGA controller series.
This board consists of two ports which are named as follows:-
- The Native USB port
- The Programming port.
In this article, we will be going through every feature that Arduino due possesses, including its schematics, pinout, and specifications.
Arduino Due Board Layout
Processor
The Arduino Due is based on the Atmel SAM3X8E ARM Cortex-M3 CPU. This processor is a 32-bit ARM microcontroller.
Digital Pins
Arduino Due consists of a total of 54 digital input output pins.
Clock Pulse
It has a clock pulse rate of 82 MHz.
Battery Connector
The Arduino Due consists of a barrel plug connector. This connector works with a standard 9v battery for powering up the board.
Buses
Arduino Due consists of two control networks or CAN buses.
The Arduino Due also contains two USB ports, JTAG header pins, an SPI header, a RESET pin, and an ERASE button.
Real-Time Clock
The Arduino due board has a real-time clock or RTC which consists of calendar and alarm features that can be enabled internally.
Arduino Due Specifications
The technical specifications of the ArduinoDue are as follows
Microcontroller | AT91SAM3X8E |
---|---|
USB connector | Micro USB |
Built-in LED Pin | 13 |
Digital I/O Pins | 54 |
Analog input pins | 12 |
Analog output pins | 2 |
PWM pins | 12 |
CAN | Yes (ext. transceiver needed) |
UART | Yes, 4 |
I2C | Yes |
SPI | Yes |
I/O Voltage | 3.3V |
Input voltage (nominal) | 7-12V |
DC Current per I/O pin (group 1) | 9 mA |
DC Current per I/O pin (group 2) | 3 mA |
Power Supply Connector | Barrel Plug |
Total DC Output Current on all I/O lines | 130 mA |
Processor | AT91SAM3X8E 84 MHz |
SRAM | 96 KB |
Flash | 512 KB |
Weight | 36 g |
Width | 53.3 mm |
Length | 101.5 mm |
Pinout Description
Let us now see the pinout description of Arduino due pinout, but before that let us assume some names for the pins to easily understand their working.
Power Pins
Vin
This pin is used for input voltage. The input voltage is a modulated direct current supply voltage. The input voltage is used to regulate the IC used in the connections. Vin is also known as the primary voltage source on the Arduino board.
S.NO | Pin Number | Type | Pin Name |
VIN | Power | Supply voltage |
USB Board
There are two USB ports available on the Arduino Due board which can be used to power up the board as well as to program the board.
Power Jack
The Arduino Due board has an in-built barrel jack which is used to power the board. An adapter is needed to power up the Arduino board by connecting it to the power jack. The barrel jack needs a 7v to 12v DC supply.
3V3 Pin
The 3v3 pin is used to generate the output voltage of 3.3 volts.
S.NO | Pin Number | Type | Pin Name |
2 | 3V3 | Output | +3.3V Output (from FTDI) |
5v pin
The 5v pin is used as the output for external components. The output is 5v. The power source of the 5v pin is a USB connector and a Vin pin.
S.NO | Pin Number | Type |
+5V | Output or Input | +5V Output (From On-board Regulator) or+5V (Input from External Power Supply |
Input-output Pins
Digital I/O Pins
There are a total of 54 digital input/output pins available on the Arduino Due board. The digital pins are used as an input or output according to the requirement. The digital pins can only read two states which are:-
- High
- Low
However, we can use 1 for the high state and 0 for the low state. When these pins receive 0V they are in a LOW state and when they receive 5V they are in a HIGH state.
The digital pins on the Arduino Due board are from D0 to D53.
S.NO | Pin Number | Type | Pin Name |
1 | D0 | I/O | Digital I/O Pin |
2 | D1 | I/O | Digital I/O Pin |
3 | D2 | I/O | Digital I/O Pin |
4 | D3 | I/O | Digital I/O Pin |
5 | D4 | I/O | Digital I/O Pin |
6 | D5 | I/O | Digital I/O Pin |
7 | D6 | I/O | Digital I/O Pin |
8 | D7 | I/O | Digital I/O Pin |
9 | D8 | I/O | Digital I/O Pin |
10 | D9 | I/O | Digital I/O Pin |
11 | D10 | I/O | Digital I/O Pin |
12 | D11 | I/O | Digital I/O Pin |
13 | D12 | I/O | Digital I/O Pin |
14 | D13 | I/O | Digital I/O Pin |
15 | D14 | I/O | Digital I/O Pin |
16 | D15 | I/O | Digital I/O Pin |
17 | D16 | I/O | Digital I/O Pin |
18 | D17 | I/O | Digital I/O Pin |
19 | D18 | I/O | Digital I/O Pin |
20 | D19 | I/O | Digital I/O Pin |
21 | D20 | I/O | Digital I/O Pin |
22 | D21 | I/O | Digital I/O Pin |
23 | D22 | I/O | Digital I/O Pin |
24 | D23 | I/O | Digital I/O Pin |
25 | D24 | I/O | Digital I/O Pin |
26 | D25 | I/O | Digital I/O Pin |
27 | D26 | I/O | Digital I/O Pin |
28 | D27 | I/O | Digital I/O Pin |
29 | D28 | I/O | Digital I/O Pin |
30 | D29 | I/O | Digital I/O Pin |
31 | D30 | I/O | Digital I/O Pin |
32 | D31 | I/O | Digital I/O Pin |
33 | D32 | I/O | Digital I/O Pin |
34 | D33 | I/O | Digital I/O Pin |
35 | D34 | I/O | Digital I/O Pin |
36 | D35 | I/O | Digital I/O Pin |
37 | D36 | I/O | Digital I/O Pin |
38 | D37 | I/O | Digital I/O Pin |
39 | D38 | I/O | Digital I/O Pin |
40 | D39 | I/O | Digital I/O Pin |
41 | D40 | I/O | Digital I/O Pin |
42 | D41 | I/O | Digital I/O Pin |
43 | D42 | I/O | Digital I/O Pin |
44 | D43 | I/O | Digital I/O Pin |
45 | D44 | I/O | Digital I/O Pin |
46 | D45 | I/O | Digital I/O Pin |
47 | D46 | I/O | Digital I/O Pin |
48 | D47 | I/O | Digital I/O Pin |
49 | D48 | I/O | Digital I/O Pin |
50 | D49 | I/O | Digital I/O Pin |
51 | D50 | I/O | Digital I/O Pin |
52 | D51 | I/O | Digital I/O Pin |
53 | D52 | I/O | Digital I/O Pin |
54 | D53 | I/O | Digital I/O Pin |
Analog Pins
There are a total of 12 analog pins available on the board. Analog Input Pins are useful to take the signal from analog sensors and convert it into a digital value. These pins can receive any value. It can receive value not only in the high or low states but in other forms also. The analog pins of the board are from Pin A0 to Pin A11.
The analog pin is connected to an inbuilt ADC of 212 bits which is equivalent to 4096 different values.
S.NO | Pin Number | Type | Pin Name |
1 | A0 | Input | Analog Input Channel 0 |
2 | A1 | Input | Analog Input Channel 1 |
3 | A2 | Input | Analog Input Channel 2 |
4 | A3 | Input | Analog Input Channel 3 |
5 | A4 | Input | Analog Input Channel 4 |
6 | A5 | Input | Analog Input Channel 5 |
7 | A6 | Input | Analog Input Channel 6 |
8 | A7 | Input | Analog Input Channel 7 |
9 | A8 | Input | Analog Input Channel 8 |
10 | A9 | Input | Analog InputChannel 9 |
11 | A10 | Input | Analog InputChannel 10 |
12 | A11 | Input | Analog InputChannel 11 |
PWM Pins
From the 54 digital pins, 14 pins are Pulse Width Modulation pins which are available on Arduino Due board.
These PWM pins on Arduino due boards are pins 2,3,4,5,6,7,8,9,10,11,12 and 13.
GND Pin
The ground pin is used to ground the circuit.
S.NO | Pin Number | Type | Pin Name |
1 | GND | Power | Supply Ground |
COMMUNICATION PINS OF ARDUINO DUE
SPI Pins
The Arduino due board consists of the “Semi – Peripheral Communication Protocol” or SPI. The SPI protocol is used to develop communication between the controller device and its peripheral devices. It is more compatible with Arduino UNO and Arduino Leonardo. Three pins are needed for SPI communication protocol which are:-
- MISO – It stands for Master Input/Slave Output. This data line sends data to the master device.
- MOSI – It stands for Master Output/Slave Input. This data line is used for sending data to slaves/peripheral devices.
- SCK – This pin is used to synchronize the data transfer between master and slave device.
In Arduino due the SPI pin ports are there, one is mounted on the ICSP header and the other is on the SPI header.
S.NO | Pin Number | Type | Pin Name |
1 | Pin4/MOSI | I/O | Master Out Slave In |
2 | Pin3/SCK | Output | Clock From Master To Slave |
3 | Pin1/MISO | I/O | Master In Slave Out |
UART Pin
The Arduino Due consists of a UART communication protocol which is used for serial communication. It consists of two pins which are Rx and TX.
- Rx – This pin is used to transmit the serial data.
- TX – This pin is used to receive the serial data.
UART pins are D1, D14, D16, and D18 which act as TX pins,s, and D0, D15, D17, and D19 which act as Rx pins.
S.NO | Pin Number | Type | Pin Name |
1 | D1/TX | I/O | Digital I/O PinSerial TX Pin |
2 | D0/RX | I/O | Digital I/O PinSerial RX Pin |
3 | D14/TX3 | I/O | Digital I/O PinSerial TX Pin |
4 | D15/RX3 | I/O | Digital I/O PinSerial TX Pin |
5 | D16/TX2 | I/O | Digital I/O PinSerial TX Pin |
6 | D17/RX2 | I/O | Digital I/O PinSerial TX Pin |
7 | D18/TX1 | I/O | Digital I/O PinSerial TX Pin |
8 | D19/RX1 | I/O | Digital I/O PinSerial TX Pin |
I2C Pins
I2C is a two-wire serial communication protocol. It stands for “Inter-Integrated Circuit.” It uses two pins for communication purposes. One of them is used to send data while the other pin is used to receive data.
The two pins of the I2C protocol are the “Serial Clock Pin(SCL)” and “Serial Data Pin(SDA)“.
- SCL – It is defined as the line which transfers the clock data. SCL pin is used to synchronize the shift of data in between two devices. This signal is generated by the master device.
It is a clock line.
- SDA – It is defined as the line which is used by slave devices to send and receive data. It is a data line.
I2C pins on the board are D20, D70 which is SDA, and D21, D71 which is SCL.
S.NO | Pin Number | Type | Pin Name |
1 | D20/SDA | I/O | Digital I/O PinSerial Data Pin |
2 | D21/SCL | I/O | Digital I/O PinSerial Clock Pin |
3 | D70/SDA | I/O | Digital I/O PinSerial Data Pin |
4 | D71/SCL | I/O | Digital I/O PinSerial Clock Pin |
ICSP Header Pins
ICSP stands for In-Circuit Serial Programming and it is also called In-System Programming (ISP). It is used to program microcontrollers. ICSP Header Pins contain six pins MISO, +Vcc, SCK, MOSI, Reset, and GND.
Arduino Due ICSP Pin Name | Type | Function |
MISO | Input or Output | Master In Slave Out |
Vcc | Output | Supply Voltage |
SCK | Output | Clock from Master to Slave |
MOSI | Output or Input | Master Out Slave In |
RST | Input | Reset (Active Low) |
GND | Power | Supply Ground |
Other pins
JTAG Header
It stands for “Joint Test Action Group”. It is used for debugging, programming, and testing the interface.
JTAG is available in almost all modern microcontrollers.
Microcontrollers having JTAG can be programmed, debugged, and tested using a single connector on a PC.
Temperature sensor
The Arduino due board has a temperature sensor which is connected to ADC15 internally. It can be programmed accordingly to read
Programming Port
The programming port is connected to the microcontroller Atmel 16U2. It acts as a serial USB converter. It is used for programming the Arduino due board.
IOREF
It stands for Input-Output voltage REFerence. It is used to check the operating voltage (3.3V or 5V) of the board. The IOREF pin is connected to the Arduino Board. The Microcontroller operates with the reference voltage provided by the IOREF.
the temperature.