The Arduino Micro is a microcontroller board based on the ATmega32u4, developed in conjunction with Adafruit. It has 20 digital input/output pins (of which 7 can be used as PWM outputs and 12 as analog inputs), a 16 MHzcrystal oscillator, a micro USB connection, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a micro USB cable to get started. It has a form factor that enables it to be easily placed on a breadboard.
The Micro is similar to the Arduino Leonardo in that the ATmega32u4 has built-in USB communication, eliminating the need for a secondary processor. This allows the Micro to appear to a connected computer as a mouse and keyboard, in addition to a virtual (CDC) serial / COM port. 
Summary
| 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 | 

 
