Last updated on March 26th, 2024 at 12:44 pm
The Arduino Micro is a miniature version of the Arduino Leonardo board. It has an ATmega32U4 microcontroller at its heart.
The board features 20 digital input/output pins, a 16 MHz crystal oscillator, a micro-USB port, an ICSP header pins, and a RESET button. Arduino Micro pinout, specifications, schematic, and datasheet are given below.

Table of Contents
Introduction to Arduino Micro Board Layout

Atmega32U4: The ATMega32U4 microcontroller chip is developed by Atmel. It is a low-power 8-bit AVR RISC-based microchip that features a 32KB self-programming flash program memory, 2.5KB SRAM, 1KB EEPROM, USB 2.0 full-speed/low-speed device, 12-channel 10-bit A/D-converter, and JTAG interface for on-chip-debug.
Atmega32U4 pinout: The atmega32U4 microcontroller chip has 44 pins and comes in a TQFP package.

Crystal Oscillator: The board comes with a crystal oscillator of frequency 16MHz, which generates the clock signal in the microcontroller. The basic function of the crystal oscillator is to provide the basic timing and control to the board.
Micro USB Port: The Arduino Micro comes with a Micro USB 2.0 port. It allows us to bridge the connection between the board and the computer. It is very crucial for programming the Arduino Micro board.
Note: The Arduino Micro has a fuse connected to the USB port. It protects the computer’s USB ports from overcurrent and shorts, in case a current of more than 500 mA is drawn from the port.
This fuse is a resettable polyfuse that automatically breaks the connection until the short or overload is removed. And once the circuit is free from overcurrent, this resettable polyfuse returns to its original state.
RESET Button: This button is used for resetting the board. It’s recommended to press the reset button after flashing some code to the Arduino Micro.
INBUILT LED (13): In the Arduino Micro board, there is a built-in LED (Green) connected to the digital pin 13. The LED can be controlled by switching the pin to HIGH or LOW.
RX LED (17): In the board, there is an RX LED connected to digital pin 17. The LED can be controlled by switching the pin to HIGH or LOW.
TX LED (30): In the board, there is a TX LED connected to digital pin 30. The LED can be controlled by switching the pin to HIGH or LOW.
Are you a beginner? Can't decide which book to read? Check out this article on Best Arduino Books for beginners
Pinout

- As shown in the Arduino micro pinout above, the board has 20 digital I/O pins. Out of these 20 pins, 7 pins are PWM (Pulse Width Modulation) pins and, 12 pins are analog input pins.
- Apart from this, Arduino Micro has a reset button, a 16MHz crystal oscillator, ICSP header, and a micro-USB port.
Power pins
Vin pin: It is the input voltage pin, which can be used to power up the Arduino board. When a certain voltage is given via the power jack to power the board, this voltage shows up at the Vin pin.
Note: Vin pin and Power jack terminal are connected internally.
5V pin: The 5V pin generates regulated 5v output for the externally connected components. The power source of the 5V pin for the Arduino Micro board is a USB connector and the Vin.
Note: A 5-volt voltage regulator step down the input voltage coming from the Vin pin or power jack to a steady 5V. This 5V output from the voltage regulator is then connected to the 5V pin of Arduino Micro.
3.3 V pin: The 3.3V pin generates an output voltage of 3.3v.
GND pins. Two ground pins are available on the Arduino Microboard.
Digital I/O pins
- 20 digital I/O pins on the Arduino Micro board can be used as an input or output. They operate at 5 volts.
- The Arduino Micro digital pins can read one of the two states: when the electric signal is present and when it is absent. This kind of input is usually known as digital (or binary) and these states are referred to as HIGH and LOW or 1 and 0.
Analog Pins
- The Arduino Micro consists of 12 analog inputs, labeled as ADCX (where X is pin no.). All of these pins are digital I/O pins also.
- Each one of the analog pins is connected to an inbuilt ADC of 210 bit (i.e, 1024 different values) resolution.
PWM pins
- The seven pins from the set of digital pins are PWM (Pulse Width Modulation) pins which are numbered as 3, 5, 6, 9, 10, 11, and 13.
- Each PWM pin provides an 8-bit PWM output.
- To generate the PWM output, the syntax “analogwrite(PWM Pin, PWM value)” is used. PWM value varies between 0 (0 volts) and 255 (5 volts).
UART pins

UART pins are used for serial communication. 0 (RX) to receive the data, and 1 (TX) to transmit (TX) TTL serial data using the ATmega32U4 hardware serial capability.
ICSP pins

- ICSP stands for In-Circuit Serial Programming.
- The header pins of ICSP are used to program the firmware of the Arduino Micro board.
- The new firmware upgrades with the new capabilities are sent in through the microcontroller with the help of this ICSP header.
- The ICSP header consists of 6 pins.
Two-wire interface (TWI)/I2C pins

I2C is the two-wire serial communication protocol. The I2C protocol stands for Inter-Integrated Circuits. It uses two pins for sending and receiving data: a serial clock (SCL) pin and a serial data (SDA) pin.
- SCL-It stands for Serial Clock. It is defined as the pin that transmits the clock data between the devices. It is used for synchronization purposes; the Serial Clock is provided by the master device.
- SDA-It stands for Serial Data. This pin is used by both the slave and master device to send and receive the data in between. That’s why it is also called a data line, while SCL can be called a clock line.
External interrupt pins

- There are 4 external interrupts pins on the Arduino Micro board: 3 (INT 0), 2 (INT 2), 0 (INT 3) and, 1 (INT 4).
- The interrupt pins can be configured to trigger the interrupt if any of the following changes occur: a low value, a rising or falling edge, or a change in value.
SPI Pins
- It stands for Serial Peripheral Interface.
- These pins are used by the microcontrollers to communicate with one or more peripheral devices efficiently.
- Unlike Arduino UNO, the SPI pins of the Micro board are present on the ICSP header, these pins support SPI communication using the SPI library.
- This means that even if we have an external shield that uses SPI protocol but does NOT consist of a 6-pin ICSP connector that can bridge with the Arduino Micro’s 6-pin ICSP header, the shield will not work.
Other pins
AREF pin: Reference voltage for the analog inputs. Used with the function analogReference().
RESET pin: When 0volts / Low is given to this pin, it resets the board.
Specifications
Given below are the technical specifications of the Arduino Micro board.
Microcontroller | ATmega32U4 |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-9V |
Input Voltage (limit) | 6-9V |
Digital I/O Pins | 20 |
PWM Channels | 7 |
Analog Input Channels | 12 |
DC Current per I/O Pin | 20 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 32 KB (ATmega32U4) of which 4 KB is reserved for the bootloader |
SRAM | 2.5 KB (ATmega32U4) |
EEPROM | 1 KB (ATmega32U4) |
Clock Speed | 16 MHz |
LED_BUILTIN | 13 |
Length | 48 mm |
Width | 18 mm |
Weight | 13 g |
Schematic
**To download the Arduino Micro schematic in PDF format, click here.

Atmega32U4 datasheet
To download the datasheet of the Atmega328UA microcontroller chip, click here.
Dimensions/ board size
The board size is 1.9″ x 0.7″ OR 48mm x 18mm.

Where to buy?
You can get the original Arduino Micro board from different stores. But if you want to get it from Amazon, we recommend the following sellers.
FAQs
How many pins does Arduino Micro have?
It has 20 digital input/output (I/O) pins, of which 7 can be used as PWM outputs and 12 as analog inputs. Additionally, it has 2 pins dedicated to USB communication.
What is the maximum voltage for Arduino Micro?
5 volts (V)
What is the difference between Arduino UNO and Micro Pinout?
The Arduino Uno and Arduino Micro have different form factors and pin configurations. The Uno has 14 digital I/O pins, while the Micro has 20. They also differ in size, USB connectors, and voltage regulators.
I’m missing the little dot rotation indicator at the ICSP/SPI pins picture. The orientation is 180 degrees different from the one in the ArduinoISP example patch, which caused some confusion with me(a beginner).