Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Arduino Micro (Rev3): Examples, Pinouts, and Specs

Image of Arduino Micro (Rev3)
Cirkit Designer LogoDesign with Arduino Micro (Rev3) in Cirkit Designer

Introduction

The Arduino Micro (Rev3) is a compact microcontroller board developed by Arduino, based on the ATmega32U4 microcontroller. It features built-in USB connectivity, making it ideal for projects requiring direct communication with a computer. With 20 digital input/output pins, 12 of which can be used as PWM outputs, and 7 analog inputs, the Arduino Micro is versatile and well-suited for small-scale projects, embedded systems, and prototyping.

Explore Projects Built with Arduino Micro (Rev3)

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino Uno R3-Based Voice-Controlled Robot with Servo Actuation and SD Logging
Image of wheel: A project utilizing Arduino Micro (Rev3) in a practical application
This circuit features an Arduino Uno R3 as the central microcontroller, interfaced with a variety of components. It includes a voice recognition module for audio input commands, an analog thumbstick for manual control, and multiple servos for actuation. Additionally, the circuit integrates an I2C LCD screen for display purposes, an infrared proximity sensor for distance measurement, and a micro SD card module for data storage.
Cirkit Designer LogoOpen Project in Cirkit Designer
ATmega328P-Based Sensor Hub with OLED Display and LIDAR
Image of TILTPCB: A project utilizing Arduino Micro (Rev3) in a practical application
This circuit features an Mtiny Uno ATmega328P microcontroller as its central processing unit, interfacing with a variety of sensors and peripherals. It includes a 0.96" OLED display and an MPU6050 accelerometer/gyroscope for user interface and motion sensing, respectively. The circuit also integrates a TF LUNA LIDAR for distance measurement, a DHT11 sensor for temperature and humidity readings, and uses a 9V battery with a 7805 voltage regulator for power management. Communication with a computer for programming and data exchange is facilitated by an Adafruit FTDI Friend module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Leonardo-Controlled Robot with L298N Motor Driver and Multiple Sensors
Image of arduino car: A project utilizing Arduino Micro (Rev3) in a practical application
This is a microcontroller-based control system using an Arduino Leonardo to manage DC gearmotors through an L298N motor driver, process inputs from IR and ultrasonic sensors, and actuate a servomotor. It features visual indicators (LEDs), an audible alert (piezo speaker), and a power management system with a rocker switch.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino-Based GPS Speedometer with LCD Display and Relay Control
Image of Speedometer Praktis: A project utilizing Arduino Micro (Rev3) in a practical application
This circuit integrates an Arduino Micro with various sensors (GPS, MPU-6050, light, sound) and a 20x4 LCD display to monitor environmental data and display it. The Arduino controls a relay based on a push button input and displays GPS speed data on the LCD, while also reading sensor data for potential further processing.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Arduino Micro (Rev3)

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of wheel: A project utilizing Arduino Micro (Rev3) in a practical application
Arduino Uno R3-Based Voice-Controlled Robot with Servo Actuation and SD Logging
This circuit features an Arduino Uno R3 as the central microcontroller, interfaced with a variety of components. It includes a voice recognition module for audio input commands, an analog thumbstick for manual control, and multiple servos for actuation. Additionally, the circuit integrates an I2C LCD screen for display purposes, an infrared proximity sensor for distance measurement, and a micro SD card module for data storage.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of TILTPCB: A project utilizing Arduino Micro (Rev3) in a practical application
ATmega328P-Based Sensor Hub with OLED Display and LIDAR
This circuit features an Mtiny Uno ATmega328P microcontroller as its central processing unit, interfacing with a variety of sensors and peripherals. It includes a 0.96" OLED display and an MPU6050 accelerometer/gyroscope for user interface and motion sensing, respectively. The circuit also integrates a TF LUNA LIDAR for distance measurement, a DHT11 sensor for temperature and humidity readings, and uses a 9V battery with a 7805 voltage regulator for power management. Communication with a computer for programming and data exchange is facilitated by an Adafruit FTDI Friend module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of arduino car: A project utilizing Arduino Micro (Rev3) in a practical application
Arduino Leonardo-Controlled Robot with L298N Motor Driver and Multiple Sensors
This is a microcontroller-based control system using an Arduino Leonardo to manage DC gearmotors through an L298N motor driver, process inputs from IR and ultrasonic sensors, and actuate a servomotor. It features visual indicators (LEDs), an audible alert (piezo speaker), and a power management system with a rocker switch.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Speedometer Praktis: A project utilizing Arduino Micro (Rev3) in a practical application
Arduino-Based GPS Speedometer with LCD Display and Relay Control
This circuit integrates an Arduino Micro with various sensors (GPS, MPU-6050, light, sound) and a 20x4 LCD display to monitor environmental data and display it. The Arduino controls a relay based on a push button input and displays GPS speed data on the LCD, while also reading sensor data for potential further processing.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • USB-based projects such as keyboards, mice, and game controllers
  • Embedded systems and IoT applications
  • Robotics and automation
  • Sensor interfacing and data logging
  • Wearable electronics and compact designs

Technical Specifications

The following table outlines the key technical details of the Arduino Micro (Rev3):

Specification Details
Microcontroller ATmega32U4
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limit) 6-20V
Digital I/O Pins 20 (7 PWM outputs)
Analog Input Pins 12
DC Current per I/O Pin 20 mA
Flash Memory 32 KB (4 KB used by bootloader)
SRAM 2.5 KB
EEPROM 1 KB
Clock Speed 16 MHz
USB Connectivity Native USB
Dimensions 48 mm x 18 mm
Weight 13 g

Pin Configuration and Descriptions

The Arduino Micro (Rev3) has a total of 24 pins, including power, digital I/O, and analog input pins. Below is a detailed pinout description:

Pin Type Description
VIN Power Input Input voltage to the board when using an external power source (7-12V recommended).
5V Power Output Regulated 5V output from the board.
3.3V Power Output Regulated 3.3V output from the board.
GND Ground Ground pins.
Digital 0-13 Digital I/O General-purpose digital input/output pins. Pins 3, 5, 6, 9, 10, 11 support PWM.
Analog 0-11 Analog Input Analog input pins (10-bit resolution).
AREF Analog Reference Reference voltage for analog inputs.
RESET Reset Resets the microcontroller.
TX (1) UART Transmit Transmit pin for serial communication.
RX (0) UART Receive Receive pin for serial communication.
USB D+ / D- USB Data Lines Native USB communication pins.

Usage Instructions

How to Use the Arduino Micro in a Circuit

  1. Powering the Board:

    • Connect the Arduino Micro to your computer via a USB cable for power and programming.
    • Alternatively, supply power through the VIN pin (7-12V recommended) or the 5V pin (regulated 5V).
  2. Connecting Components:

    • Use the digital I/O pins for controlling LEDs, relays, or other digital devices.
    • Use the analog input pins to read sensor data (e.g., temperature, light, or potentiometers).
    • For PWM control, connect devices like motors or LEDs to pins 3, 5, 6, 9, 10, or 11.
  3. Programming the Board:

    • Open the Arduino IDE on your computer.
    • Select Arduino Micro from the Tools > Board menu.
    • Choose the correct COM port under Tools > Port.
    • Write or load your sketch and click the Upload button.

Important Considerations and Best Practices

  • Avoid exceeding the maximum current rating of 20 mA per I/O pin to prevent damage.
  • Use external pull-up or pull-down resistors for stable digital input readings.
  • When using analog inputs, ensure the input voltage does not exceed the operating voltage (5V).
  • For USB-based projects, ensure the USB cable is securely connected to avoid communication issues.

Example Code: Blinking an LED

The following example demonstrates how to blink an LED connected to pin 13 of the Arduino Micro:

// This sketch blinks an LED connected to pin 13 of the Arduino Micro.
// The LED will turn on for 1 second, then off for 1 second, repeatedly.

void setup() {
  pinMode(13, OUTPUT); // Set pin 13 as an output pin
}

void loop() {
  digitalWrite(13, HIGH); // Turn the LED on
  delay(1000);            // Wait for 1 second
  digitalWrite(13, LOW);  // Turn the LED off
  delay(1000);            // Wait for 1 second
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. The board is not recognized by the computer:

    • Ensure the USB cable is functional and supports data transfer.
    • Check that the correct COM port is selected in the Arduino IDE.
    • Try reinstalling the Arduino drivers or restarting your computer.
  2. Sketch upload fails:

    • Verify that the correct board and port are selected in the Arduino IDE.
    • Press the reset button on the Arduino Micro just before uploading the sketch.
    • Ensure no other program is using the COM port.
  3. Components connected to the board are not working:

    • Double-check the wiring and connections.
    • Ensure the components are compatible with the Arduino Micro's voltage and current ratings.
    • Use a multimeter to verify power supply and signal levels.

FAQs

Q: Can the Arduino Micro act as a USB keyboard or mouse?
A: Yes, the Arduino Micro supports native USB communication and can emulate a keyboard, mouse, or other HID devices using the Keyboard and Mouse libraries.

Q: How do I reset the Arduino Micro?
A: Press the reset button on the board. Alternatively, you can connect the RESET pin to GND momentarily.

Q: Can I power the Arduino Micro with a battery?
A: Yes, you can use a battery to power the board via the VIN pin (7-12V recommended) or the 5V pin (regulated 5V).

Q: What is the maximum current the board can supply?
A: The total current available depends on the power source. When powered via USB, the maximum current is approximately 500 mA, shared between the board and connected components.