Datasheet

Pin Mapping of the Arduino Micro displays the complete functioning for all the pins, to use
them as in the Leonardo.
See also the mapping between Arduino pins and ATmega32u4 ports.
The Micro has a number of facilities for communicating with a computer, another Arduino,
or other microcontrollers. The ATmega32U4 provides UART TTL (5V) serial communication,
which is available on digital pins 0 (RX) and 1 (TX). The 32U4 also allows for serial (CDC)
communication over USB and appears as a virtual com port to software on the computer. The
chip also acts as a full speed USB 2.0 device, using standard USB COM drivers. On Windows,
a .inf file is required. The Arduino software includes a serial monitor which allows simple
textual data to be sent to and from the Arduino board. The RX and TX LEDs on the board will
flash when data is being transmitted via the USB connection to the computer (but not for
serial communication on pins 0 and 1).
A SoftwareSerial library allows for serial communication on any of the Micro's digital pins.
The ATmega32U4 also supports I2C (TWI) and SPI communication. The Arduino software
includes a Wire library to simplify use of the I2C bus; see the documentation for details. For
SPI communication, use the SPI library.
The Micro appears as a generic keyboard and mouse, and can be programmed to control
these input devices using the Keyboard and Mouse classes.
The Micro can be programmed with the Arduino software (download). Select "Arduino Micro
from the Tools > Board menu. For details, see the reference and tutorials.
The ATmega32U4 on the Arduino Micro comes pre-burned with a bootloader that allows you
to upload new code to it without the use of an external hardware programmer. It
communicates using the AVR109 protocol.
You can also bypass the bootloader and program the microcontroller through the ICSP (In-
Circuit Serial Programming) header; see these instructions for details.
Rather than requiring a physical press of the reset button before an upload, the Micro is
designed in a way that allows it to be reset by software running on a connected computer. The
reset is triggered when the Micro's virtual (CDC) serial / COM port is opened at 1200 baud