- Arduino Nano Board Layout
- Technical Specifications of Arduino Nano
- Arduino Nano Pinout
- Pin Description
In this tutorial, we will have a brief overview about the Arduino Nano Board, the layout of the board, some of the important specifications and finally the Arduino Nano Pinout along with the pin description.
After Arduino UNO, the most popular board in the Arduino line-up is probably the Arduino Nano. Both UNO and Nano are based on ATmega328P Microcontroller but Nano is significantly smaller in size compared to UNO.
Despite the size, Arduino Nano packs in more or less the same features as UNO. If you compare UNO and Nano, then Nano lacks the DC Power Jack and contains a mini-B type USB connector. Other than that Nano is very similar to UNO in terms of functionality.
The Nano board is designed in such a way that the pins are breadboard friendly so that you can easily mount it on one for your DIY projects.
Overall, the Arduino Nano is a very good alternative to the mighty Arduino UNO and is available at a lower price. Personally speaking, I suggest Arduino Nano over UNO as it is cheaper, breadboard friendly, small in size and has couple of more pins (digital and analog IO) than UNO.
Arduino Nano Board Layout
The following image shows the layout of a typical Arduino nano board. As you can see from the previous image, there are a couple of components on the bottom side of the board as well (5V Regulator and USB-to-Serial Converter IC are the main ones).
As you can notice, the Type-B USB connector from Arduino UNO is replaced with mini-B type connector. Also, there is no 2.1 mm DC jack to provide external power supply. Apart from that, the layout of Arduino Nano is very much self-explanatory.
Regarding the pin, I will discuss about them in the Arduino Nano Pinout Section.
Technical Specifications of Arduino Nano
As Arduino Nano is also based on ATmega328P Microcontroller, the technical specifications are similar to that of UNO. But none the less, let me give you a brief overview about some important specifications of Arduino Nano.
32 KB (2 KB of this used by bootloader)
Digital IO Pins
How to power up the Arduino Nano?
There are a couple of ways in which you can power the Nano board. The first and easy way is using the mini-B type USB Connector. The next way is to provide a regulated 5V supply through the 5V pin (Pin number 27).
Finally, the Nano has an onboard regulator at the bottom (along with the USB – to – Serial Converter). To use, you can provide an unregulated supply in the range of 6V to 20V to VIN pin of the Nano (Pin number 30).
What are Different Memories of Arduino Nano?
Strictly speaking, this is specific to the MCU used on the Nano Board, which is ATmega328P. There are three different memories available in ATmega328P. They are:
- 32 KB of Flash Memory
- 2 KB of SRAM
- 1 KB of EEPROM
- 2 KB of the Flash Memory is used by the bootloader code.
What are the Input and Output Pins of Arduino Nano?
Of the 30 pins available on the Nano board, 22 pins are associated with input and output. In that 14 pins (D0 to D13) are true digital IO pins, which can be configured as per you application using pinMode(), digitalWrite() and digitalRead() functions.
All these Digital IO pins are capable of sourcing or sinking 40mA of current. An additional feature of the Digital IO pins is the availability of internal pull-up resistor (which is not connected by default). The value of the internal pull-up resistor will be in the range of 20KΩ to 50KΩ.
There are also 8 Analog Input Pins (A0 to A7). This is a couple more than Arduino UNO (which only has 6). All the analog input pins provide a 10-bit resolution ADC feature, which can be read using analogRead() function.
An important point about Analog Input pins is that they can be configured as Digital IO pins, if required (all analog pins except A6 and A7 can be configured as digital IO).
Digital IO pins 3, 5, 6, 9, 10 and 11 are capable of producing 8-bit PWM Signals. You can use analogWrite() function for this.
What Communication Interfaces are available on Arduino Nano?
Arduino Nano supports three different types of communication interfaces. They are:
Perhaps the most common communication interface in the Arduino universe is the Serial Communication. In fact, the Arduino boards (UNO or Nano or Mega) are programmed using the serial communication.
Digital IO pins 0 and 1 are used as Serial RX and TX pins to receive and transmit serial data. These pins are connected to the serial pins of the on-board USB to Serial Converter IC.
Analog Input Pins A4 and A5 have alternative functions. They can be configured as SDA (A4) and SCK (A5) to support I2C or I 2 C or Two Wire Interface (TWI) communication.
The final communication interface is the SPI. Digital IO Pins 10, 11 12 and 13 can be configured as SPI pins SS, MOSI, MISO and SCK respectively.
Any additional features?
There is an on-board LED connected to digital IO pin 13. Use this LED to perform Blinky operations. The reference voltage for the internal ADC is by default set to 5V. But using the AREF pin, you can manually set the upper limit of the ADC.
To reset the microcontroller, you can use the on-board RESET button.
Although you can program the Arduino Nano using the USB cable, there is a provision to program the MCU using the In-Circuit Serial Programming (ICSP) interface.
The UART bootloader, which is preloaded in to the ATmega328P microcontroller, enables programming through serial interface. But ICSP doesn’t need any bootloader. You can program Arduino nano using ISCP or use the ISCP of Arduino Nano to program other Arduino Boards.
Digital IO Pins 2 and 3 can be configured as External Interrupts Pins INT0 and INT1 respectively. Use attachInterrupt() function to configure the Interrupt for rising edge, falling edge or level change on the pin.
Arduino Nano Pinout
Now that we have seen a little bit about Arduino Nano and its important features and specifications, let us dive into the Arduino Nano Pinout. The following image shows the complete pinout of Arduino Nano Board.
As you can see from the image, I described each pin of the Arduino Nano with its microcontroller equivalent pin, alternative functions, default functionality and other additional features.
For higher resolution image, click here.
For pin description of Arduino Nano, let us assume some basic numbering. Let the numbering begin with the TX Pin (D1). So, TX is Pin 1 RX is Pin 2, RST is Pin 3 and so on. On the other side, D13 is Pin 16, 3V3 is Pin 17 etc.
With this information, let us now see the pin description of Arduino Nano.