IOT

Arduino Pin Configuration – A Complete Guide

Electronic devices are getting more compact, adaptable, and affordable, and they are capable of performing more functions than their predecessors. In the electronics sector, a microcontroller was launched as a novel innovation. Designed to make our tasks easier, with the least amount of effort and maximum production.

Arduino is an open-source hardware and software corporation, initiative, and user community that creates single-board microcontrollers and microcontroller kits for the creation of digital devices. It is critical to understand the pin configuration of the Arduino board before beginning any project based on it. So, in order to assist you, I’ll walk you through the pin configuration of each Arduino model in this blog. 

This guide contains an explanation of the Arduino pin arrangement of the following models:

  1. Arduino Uno(R3)
  2. Arduino Mega (R3)
  3. Arduino Nano
  4. Arduino Leonardo
  5. Arduino Due
  6. LilyPad Arduino
  7. Arduino Micro
  8. Arduino Pro Mini 

Arduino Uno (R3)

The Arduino Uno is an ATmega328-based microcontroller board. Arduino is an open-source prototyping tool that is great for both hobbyists and professionals due to its simplicity. The Arduino Uno contains 14 digital input/output pins, 6 analogue inputs, a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It comes with everything you’ll need to get started with the microcontroller; simply plug it into a computer with a USB cable or power it with an AC-to-DC adapter or battery.

This board has a USB interface, which means it can be connected to a computer through a USB cable, and it can be programmed using the Arduino IDE (Integrated Development Environment) software.

Specifications:

  • Microcontroller: ATmega328
  • Operating Voltage: 5V
  • Input Voltage (recommended): 7-12V
  • Input Voltage (limits): 6-20V
  • Digital I/O Pins: 14 (of which 6 provide PWM output)
  • Analog Input Pins: 6
  • DC Current per I/O Pin: 40 mA
  • DC Current for 3.3V Pin: 50 mA
  • Flash Memory: 32 KB of which 0.5 KB used by bootloader
  • SRAM: 2 KB (ATmega328)
  • EEPROM: 1 KB (ATmega328)
  • Clock Speed: 16 MHz
  • Vin: This is the input voltage pin of the Arduino board used to provide input supply from an external power source.
  • 5V: This pin on the Arduino board is utilised to provide a regulated power supply voltage to the board as well as onboard components.
  • 3.3V: This pin on the board is used to deliver a 3.3V supply that is generated by the board’s voltage regulator.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.
  • Analog Pins: The analogue pins A0 to A5 are utilised as analogue inputs and range from 0 to 5V
  • Digital Pins: The Arduino uses pins 0 to 13 as digital inputs and outputs.
  • Serial pins:These are also referred to as UART pins. It allows the Arduino board to communicate with a computer or other devices. To broadcast and receive data, the transmitter pin number 1 and receiver pin number 0 are used, respectively.
  • External Interrupt Pins: This pin on the Arduino board is used to generate an external interrupt, and pin numbers 2 and 3 are used to do so.
  • PWM Pins: These pins on the board are used to change the width of the pulse to convert a digital signal to an analogue signal. A PWM pin is one with the numerals 3,5,6,9,10, and 11.
  • SPI Pins: The Serial Peripheral Interface pin is used to keep SPI communication running using the SPI library. The SPI pins includes:
  1. SS: Pin number 10 is used as a Slave Select
  2. MOSI: Pin number 11 is used as a Master Out Slave In
  3. MISO: Pin number 12 is used as a Master In Slave Out
  4. SCK: Pin number 13 is used as a Serial Clock
  • LED Pin:  The board has an inbuilt LED using digital pin-13. The LED glows only when the digital pin becomes high.
  • AREF Pin: This pin on the Arduino board is an analogue reference pin. An external power supply is utilised to provide a reference voltage.

Arduino Mega (R3)

Arduino Mega 2560  is an open-source based on the Microchip ATmega2560 developed by Arduino. cc. The Arduino Mega 2560 is a newer version of the original Arduino Mega. A 16 MHz crystal oscillator, 54 digital input/output pins, 16 analogue inputs, 4 UARTs (hardware serial ports), a USB connection, a power jack, an ICSP header, and a reset button are all included. To link with external electrical circuits, an Atmega2560 microcontroller is employed. PWM output was enabled on 15 of the 54 I/O ports. Each pin has a 5V operating voltage and a maximum current of 50mA. It also has Tx and Rx pins for serial connection. The board has all of the necessary components to support the microcontroller.

Specifications:

  • Microcontroller: ATmega2560
  • Operating Voltage: 5V
  • Input Voltage (recommended): 7-12V
  • Input Voltage (limits): 6-20V
  • Digital I/O Pins: 54 (of which 15 provide PWM output)
  • Analog Input Pins: 16
  • DC Current per I/O Pin: 40 mA
  • DC Current for 3.3V Pin: 50 mA
  • Flash Memory: 128 KB of which 4 KB used by the boot loader
  • SRAM: 8 KB
  • EEPROM: 4 KB
  • Clock Speed: 16 MHz
  • Vin: This is the Arduino board’s input voltage pin, which is used to provide power from an external source.
  • 5V: This pin on the Arduino board is utilised to provide a regulated power supply voltage to the board as well as onboard components.
  • 3.3V: This pin on the board is used to deliver a 3.3V supply that is generated by the board’s voltage regulator.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.

The TXD and RXD are used to send and receive serial data, respectively. Serial 0 is followed by Serial 1, Serial 2, and Serial 3 as follows:

  1. Serial 0: It consists of Transmitter pin number 1 and receiver pin number 0
  2. Serial 1:  It consists of Transmitter pin number 18 and receiver pin number 19
  3. Serial 2: It consists of Transmitter pin number 16 and receiver pin number 17
  4. Serial 3: It consists of Transmitter pin number 14 and receiver pin number 15
  • External Interrupts pins: This pin of the Arduino board is used to produce the External interrupt and it is done by the pin numbers 0,3,21,20,19,18.
  • I2C:  This pin of the board is used for I2C communication.:
  1. Pin number 20 signifies Serial Data Line (SDA)and it is used for holding the data.
  2. Pin number 21 signifies Serial Clock Line (SCL) and it is used for offering data synchronization among the devices.
  • SPI Pins: This is the Serial Peripheral Interface pin, it is used to maintainSPI communication with the help of the SPI library. SPI pins include:
  1. MISO: Pin number 50 is used as a Master In Slave Out
  2. MOSI: Pin number 51 is used as a Master Out Slave In
  3. SCK: Pin number 52 is used as a Serial Clock
  4. SS: Pin number 53 is used as a Slave Select
  • LED Pin:  The board has an inbuilt LED using digital pin-13. The LED glows only when the digital pin becomes high.
  • AREF Pin: This pin on the Arduino board is an analogue reference pin. An external power supply is utilised to provide a reference voltage.

Arduino Nano

Arduino Nano version 3 is an open-source small embedded development board based on the Microchip ATmega328 SMD package developed by Arduino. cc. Meanwhile, the current version of Arduino Nano comes with a mini USB port.

The current version of Arduino Nano comes with 14 digital I/O pins, 8 analogue pins, an ICSP header, 16 MHz ceramic resonators. And an Atmega328 microcontroller is used to connect with external electronics circuits. Out of 14 I/O ports, 6 pins were used for PWM output. This Arduino board lacks a DC power jack. Each pin operates at a voltage of 5V providing a maximum of 40mA. It also supports serial communication using Tx and Rx pins. As the DC Power Jack is not available on this Board, power can be given through Mini USB Cable.

Specifications:

  • Microcontroller: Atmel ATmega328 SMD Package
  • Operating Voltage (logic level): 5 V
  • Input Voltage (recommended): 7-12 V
  • Input Voltage (limits): 6-20 V
  • Digital I/O Pins: 14 (of which 6 provide PWM output)
  • Analog Input Pins: 8
  • DC Current per I/O Pin: 40 mA
  • Flash Memory: 32 KB (of which 2KB used by bootloader)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Clock Speed: 16 MHz
  • Automatic reset during program download
  • Power OK blue LED
  • Green (TX), red (RX) and orange (L) LED
  • Auto-sensing/switching power input
  • Small mini-B USB for programming and serial monitor
  • ICSP header for direct program download
  • Standard 0.1” spacing DIP (breadboard friendly)
  • Manual reset switch
  • Dimensions: 0.70” x 1.70”
  • Vin: This is the Arduino board’s input voltage pin, which is used to provide power from an external source.
  • 5V: This pin on the Arduino board is utilised to provide a regulated power supply voltage to the board as well as onboard components.
  • 3.3V: This pin on the board is used to deliver a 3.3V supply that is generated by the board’s voltage regulator.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller
  • Analog Pins: The analogue input ranges from 0 to 5V and is used on pins A0 to A7.
  • Digital Pins: The Arduino board uses pins D0 through D13 as digital inputs and outputs.
  • Serial pins: These are also referred to as UART pins. It allows the Arduino board to communicate with a computer or other devices. To broadcast and receive data, the transmitter pin number 1 and receiver pin number 2 are used, respectively.
  • External Interrupt Pins: This pin on the Arduino board is used to generate an external interrupt, and pin numbers 2 and 3 are used to do so.
  • PWM Pins: These pins on the board are used to change the width of the pulse to convert a digital signal to an analogue signal. A PWM pin is one with the numerals 3,5,6,9,10, and 11.
  • SPI Pins: SPI stands for Serial Peripheral Interface, and it’s utilised to keep SPI communication running with the help of the SPI library.. SPI pins include:
  1. SS: Pin number 10 is used as a Slave Select
  2. MOSI: Pin number 11 is used as a Master Out Slave In
  3. MISO: Pin number 12 is used as a Master In Slave Out
  4. SCK: Pin number 13 is used as a Serial Clock
  • I2C:  This pin of the board is used for I2C communication. 
  1. Pin A4 signifies Serial Data Line (SDA)and it is used for holding the data.
  2. Pin A5 signifies Serial Clock Line (SCL) and it is used for offering data synchronization among the devices.
  • LED Pin:  The board has an inbuilt LED using digital pin-13. The LED glows only when the digital pin becomes high.
  • AREF Pin: This pin on the Arduino board is an analogue reference pin. An external power supply is utilised to provide a reference voltage.

Arduino Leonardo

Arduino Leonardo is an open-source project based on Arduino’s ATmega328P microcontroller. A USB interface, 23 digital I/O pins, 12 analogue pins, an ICSP header, 16 MHz ceramic resonators, a power jack, and a reset button are included in the current version of Arduino Leonardo. External electronics circuits are connected using an Atmega328 microcontroller. PWM output was enabled on seven of the 23 I/O ports. 

The Arduino Leonardo has more digital input/output and analogue input pins than the Arduino Uno. An external power supply or a micro USB connection can be used to power the Arduino Leonardo.

Specifications:

  • Board Mode: LEONARDO R3
  • Microcontroller: ATmega32u4
  • Operating Voltage: 5V
  • Input Voltage (Recommended): 7-12V
  • Input Voltage (limits): 6-20V
  • Digital I/O Pins: 20
  • PWM Channels: 7
  • Analog Input Channels: 12
  • DC Current per I/O Pin: 40 mA
  • DC Current for 3.3V Pin: 50 mA
  • Flash Memory: 32 KB
  • SRAM: 2.5 KB (ATmega32u4)
  • EEPROM: 1 KB (ATmega32u4)
  • Clock Speed: 16 MHz
  • Vin: This is the Arduino board’s input voltage pin, which is used to provide power from an external source.
  • 5V: This pin on the Arduino board is utilised to provide a regulated power supply voltage to the board as well as onboard components.
  • 3.3V: This pin on the board is used to deliver a 3.3V supply that is generated by the board’s voltage regulator.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.
  • Analog Pins: The analogue input ranges from 0 to 5V and is used on pins A0 to A11.
  • Digital Pins: The Arduino board’s pins 4, 6, 8, 9, 10, and 12 are utilised as digital inputs or outputs.
  • Serial pins:These are also referred to as UART pins. It allows the Arduino board to communicate with a computer or other devices. To broadcast and receive data, the transmitter pin number 1 and receiver pin number 0 are used, respectively.
  • External Interrupt Pins: This pin on the Arduino board is used to generate an external interrupt, and pin numbers 2 and 3 are used to do so.
  • I2C:  This pin of the board is used for I2C communication. 
  1. Pin number 2 signifies Serial Data Line (SDA)and it is used for holding the data.
  2. Pin number 3 signifies Serial Clock Line (SCL) and it is used for offering data synchronization among the devices.
  • LED Pin:  The board has an inbuilt LED using digital pin-13. The LED glows only when the digital pin becomes high.
  • AREF Pin: This pin on the Arduino board is an analogue reference pin. An external power supply is utilised to provide a reference voltage.

Arduino Due

The Arduino Due is an ARM Cortex-M3 microcontroller board based on the Atmel SAM3X8E processor. It’s the first Arduino board to use a microprocessor with a 32-bit ARM core. It contains 54 digital input/output pins (of which 12 can be used as PWM outputs), 12 analogue inputs, 4 UARTs (hardware serial ports), an 84 MHz clock, USB OTG capability, 2 DAC (digital to analogue), 2 TWI, a power jack, an SPI header, a JTAG header, a reset button, and an erase button.

Specifications:

  • Microcontroller: AT91SAM3X8E
  • Operating voltage: 3.3V
  • Recommended input voltage: 7V to 12V
  • Input voltage limits: 6V to 20V
  • Digital I/O pins: 54 (of which 12 provide PWM output)
  • Analog input pins: 12
  • Analog outputs pins: 2 (DAC)
  • Total DC output current on all I/O lines: 130mA
  • DC current for 3.3V pin: 800mA
  • DC current for 5V pin: 800mA
  • Flash memory: 512KB all available for the user applications
  • SRAM: 96KB (two banks: 64KB and 32KB)
  • DataFlash: 2Mb (250KB)
  • Clock speed: 84MHz
  • PCB dimensions: 102mm x 53mm
  • Vin: This is the Arduino board’s input voltage pin, which is used to provide power from an external source.
  • 5V: This pin on the Arduino board is utilised to provide a regulated power supply voltage to the board as well as onboard components.
  • 3.3V: This pin on the board is used to deliver a 3.3V supply that is generated by the board’s voltage regulator.
  • IOREF: Input-Output Voltage REFerence is abbreviated as IOREF. It allows the shields to check the board’s operating voltage.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.
  • Analog Pins: The analogue input ranges from 0 to 5V and is used on pins A0 to A11.
  • Digital Pins: The Arduino board uses pins 0 to 53 as digital inputs and outputs.
  • PWM Pins: These pins on the board are used to change the width of the pulse to convert a digital signal to an analogue signal. Pins 2 through 13 are used as PWM pins.
  • SPI pins: These  are also referred to as UART pins. It allows the Arduino board to communicate with a computer or other devices. The data is transmitted and received using the transmitter and receiver pins, respectively.
  • I2C Communication: This pin of the board is used for I2C communication. 
  1. Serial Data Line (SDA): It is used for holding the data.
  2. Serial Clock Line (SCL): It is used for offering data synchronization among the devices.
  • Voltage for ADC: The voltage value is mapped to an integer value using this pin on the Arduino board. The voltage ranges from 0 to 5, and the numerical value ranges from 0 to 1023.
  • Erase Button: This pin on the board is used to erase the microcontroller’s Flash Memory. To erase, press and hold the Erase button for a few seconds on the board’s power.

LilyPad Arduino

Lily Tiny was designed as a tiny little Lily Pad board designed to add flashy functionality to our electronics project. The compact-sized board consists of an ATtiny85 microcontroller that can sew 4 LEDs and connect a battery for blinky projects. LilyPad is a wearable e-textile technology developed by Leah Buechley and cooperatively designed by Leah and SparkFun. This is a circular miniature board of about 25mm in diameter. It does not have any connection pin, designed specifically for the applications of electronic clothing, we will simply connect the different components of the project (switch, button cell battery, Led, accelerometer, GPS …) using a wire Stitched.

Specifications:

  • Program Memory Type: Flash
  • Program Memory (KB) : 8
  • CPU Speed (MIPS): 20
  • Data EEPROM (bytes): 512
  • Digital Communication Peripherals: 1-SPI, 1-I2C
  • Capture/Compare/PWM Peripherals : 5
  • Comparators: 1
  • Temperature Range (C) : -40 to 85
  • Operating Voltage Range (V): 1.8 to 5.5
  • Pin count: 8
  • Cap Touch Channels : 3
  • VCC: The Arduino board’s VCC pin is linked to +5V or +3.3V to provide power to the board.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.
  • Analog Pins: The analogue pins A0 to A5 are utilised as analogue inputs and range from 0 to 5V.
  • Digital Pins: There are 14 digital pins on the board that can be utilised as inputs or outputs.
  • Serial pins: These are also referred to as UART pins. It allows the Arduino board to communicate with a computer or other devices. The transmitter and receiver are used to send and receive data, respectively.
  • PWM: These pins on the board are used to change the width of the pulse to convert a digital signal to an analogue signal. PWM pins are 9, 10, 15, 16, and 17 on the circuit board.
  • SPI Pins: The Serial Peripheral Interface pin is used to keep SPI communication running using the SPI library. SPI pins include:
  1. SS: Pin number 16 is used as a Slave Select
  2. MOSI: Pin number 17 is used as a Master Out Slave In
  3. MISO: Pin number 18 is used as a Master In Slave Out
  4. SCK: Pin number 19 is used as a Serial Clock
  • I2C Communication: This pin of the board is used for I2C communication. 
  1. Serial Data Line (SDA): It is used for holding the data.
  2. Serial Clock Line (SCL): It is used for offering data synchronization among the devices.

Arduino Micro

The Arduino Micro is the Arduino Community’s smallest board. The Arduino Micro board has additional analogue input pins than the Arduino UNO. It’s just a smaller version of the Arduino Leonardo.

The Micro is a microcontroller board built in collaboration with Adafruit and based on the ATmega32U4. It has a 16 MHz crystal oscillator, a micro USB connection, an ICSP header, and a reset button. It has 20 digital input/output pins (of which 7 can be used as PWM outputs and 12 as analogue inputs), a 16 MHz crystal oscillator, a micro USB connection, an ICSP header, and a reset button.

Specifications:

  • Microcontroller: ATmega32u4 
  • Operating Voltage: 5V 
  • Input Voltage (recommended): 7-12V
  •  Input Voltage (limits): 6-20V 
  • Digital I/O Pins: 20 
  • PWM Channels: 7 
  • Analog Input Channels: 12 
  • DC Current per I/O Pin: 40 mA
  •  DC Current for 3.3V Pin: 50 mA
  •  Flash Memory: 32 KB (ATmega32u4) of which 4 KB used by bootloader
  •  SRAM: 2.5 KB (ATmega32u4) 
  • EEPROM: 1 KB (ATmega32u4)
  • Clock Speed: 16 MHz 
  • Vin: This is the Arduino board’s input voltage pin, which is used to provide power from an external source.
  • 5V: This pin on the Arduino board is utilised to provide a regulated power supply voltage to the board as well as onboard components.
  • 3.3V: This pin on the board is used to deliver a 3.3V supply that is generated by the board’s voltage regulator.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.
  • Analog Pins: The analogue input ranges from 0 to 5V and is used on pins A0 to A11.
  • Digital Pins: The Arduino board’s pins 4, 6, 8, 9, 10, and 12 are utilised as digital inputs or outputs.
  • External Interrupt Pins: This pin on the Arduino board is used to generate an external interrupt, and pin numbers 0, 1, 2, and 3 are utilised to do so.
  • PWM Pins: These pins on the board are used to change the width of the pulse to convert a digital signal to an analogue signal. PWM pins are three, five, six, nine, ten, eleven, and thirteen.
  • Serial pins: These are also referred to as UART pins. It allows the Arduino board to communicate with a computer or other devices. To broadcast and receive data, the transmitter pin number 1 and receiver pin number 0 are used, respectively.
  • I2C: The board’s I2C pin is utilised for communication.
  1. Pin number 2 signifies Serial Data Line (SDA)and it is used for holding the data.
  2. Pin number 3 signifies Serial Clock Line (SCL) and it is used for offering data synchronization among the devices.
  • SPI Pins: This is the Serial Peripheral Interface pin, it is used to maintainSPI communication with the help of the SPI library. SPI pins include:
  1. SS: It is used as a Slave Select
  2. MOSI: It is used as a Master Out Slave In
  3. MISO: It is used as a Master In Slave Out
  4. SCK: It is used as a Serial Clock
  • LED Pin:  The board has an inbuilt LED using digital pin-13. The LED glows only when the digital pin becomes high.
  • AREF Pin: This pin on the Arduino board is an analogue reference pin. An external power supply is utilised to provide a reference voltage.

Arduino Pro Mini 

The Arduino Pro Mini is a microcontroller board based on the ATmega328.  It contains 14 digital input/output pins (six of which are PWM outputs), six analogue inputs, an on-board resonator, a reset button, and mounting holes for pin headers. To give USB power and communication to the board, a six pin header can be linked to an FTDI cable or a Sparkfun breakout board. The Pro Mini is available in two versions. One operates at 3.3 volts and 8 MHz, while the other operates at 5 volts and 16 MHz.

Specifications:

  • ATmega328 running at 16MHz with external resonator (0.5% tolerance)
  • 0.8mm Thin PCB
  • USB connection off board
  • Supports auto-reset
  • 5V regulator
  • Max 150mA output
  • Over-current protected
  • Weighs less than 2 grams!
  • DC input 5V up to 12V
  • Onboard Power and Status LEDs
  • Analog Pins: 8
  • Digital I/Os: 14
  • 0.7×1.3″ (18x33mm)

The RAW pin is a new pin on the Arduino Pro mini. The RAW PIN is the on-board regulator’s input. VCC will remain at a consistent value if you attach up to 12V to the RAW pin. Advanced users appreciate this Arduino board because of its flexibility and tiny size.

  • Vin: This is the Arduino board’s input voltage pin, which is used to provide power from an external source.
  • VCC: The Arduino board’s VCC pin is linked to +5V or +3.3V to provide power to the board.
  • GND: The Arduino board is grounded using this pin on the board.
  • Reset: The microcontroller is reset using this pin on the PCB. It’s for resetting the microcontroller.
  • Analog Pins: The analogue input ranges from 0 to 5V and is used on pins A0 to A7.
  • Digital Pins: The Arduino board uses pins 2 to 13 as a digital input or output.
  • External Interrupt Pins: This pin on the Arduino board is used to generate an external interrupt, and pins 4 and 5 are utilised to do so.
  • PWM Pins: This pin on the board is used to change the width of the pulse to convert a digital signal to an analogue signal. A PWM pin is one with the numerals 3, 5, 6, 9, 10, and 12.
  • Analog Comparator: The internal comparator is attached to pins 6 and 7 (AIN0 and AIN1, respectively).
  • SPI Pins: The Serial Peripheral Interface pin is used to keep SPI communication running using the SPI library. SPI pins include:
  1. SS: Pin number 10 is used as a Slave Select
  2. MISO: Pin number 11 is used as a Master In Slave Out
  3. MOSI: Pin number 12 is used as a Master Out Slave In
  4. SCK: Pin number 13 is used as a Serial Clock

Conclusion

I hope all of you came familiar with the pin configuration of the Arduino family members from this article

Leave a Reply

Your email address will not be published.