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

How to Use Arduino Micro Pro: Examples, Pinouts, and Specs

Image of Arduino Micro Pro
Cirkit Designer LogoDesign with Arduino Micro Pro in Cirkit Designer

Introduction

The Arduino Micro Pro is a compact and versatile microcontroller board designed 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 its small form factor, the Arduino Micro Pro is perfect for embedded systems, wearable devices, and other space-constrained applications.

Explore Projects Built with Arduino Micro Pro

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Bluetooth-Controlled Robotic Vehicle with Ultrasonic Obstacle Detection and Motion Sensing
Image of 아두이노 드론: A project utilizing Arduino Micro Pro in a practical application
This circuit features a SparkFun Pro Micro microcontroller interfaced with an L298N DC motor driver to control two DC motors, an HC-SR04 ultrasonic sensor for distance measurement, a Bluetooth module HM-10 for wireless communication, and an MPU-6050 for motion tracking. The Pro Micro is responsible for processing sensor data and managing motor speeds and directions via the motor driver. Power is supplied by a 5V battery connected to the Pro Micro and a separate battery case providing 12V to the motor driver.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Pro Mini-Based Battery-Powered Temperature and Laser Display System
Image of thermal temperture gun: A project utilizing Arduino Micro Pro in a practical application
This circuit features an Arduino Pro Mini microcontroller interfaced with a USB Serial TTL for programming and power, a momentary switch for user input, and a 9V battery for power supply. It includes a KY-008 laser emitter, a 0.96" OLED display, and an MLX90614 temperature sensor, all connected to the Arduino for a potential temperature measurement and display application.
Cirkit Designer LogoOpen Project in Cirkit Designer
Dual Microcontroller Integration with Arduino Micro Pro and RP2040 Zero for Enhanced I/O Control
Image of RP2040MacroKey: A project utilizing Arduino Micro Pro in a practical application
This circuit integrates an Arduino Micro Pro and an RP2040 Zero microcontroller, interconnected to share power and ground, as well as several GPIO pins. The RP2040 Zero is programmed with a basic setup and loop structure, indicating it is ready for further development. The design suggests a collaborative processing or sensor data sharing application between the two microcontrollers.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Pro Mini Based GPS and Temperature Tracking System with NRF24L01 Wireless Communication
Image of Copy of slave node: A project utilizing Arduino Micro Pro in a practical application
This circuit features an Arduino Pro Mini as the central microcontroller, interfaced with a GPS NEO 6M module for location tracking, an ADXL345 accelerometer for motion sensing, a DS18B20 temperature sensor for environmental monitoring, and an NRF24L01 module for wireless communication. The circuit is powered by an 18650 Li-Ion battery through a voltage regulator, ensuring stable power supply to the components. A pushbutton is included for user input, and resistors are used for pull-up/down configurations and current limiting purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Arduino Micro Pro

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 아두이노 드론: A project utilizing Arduino Micro Pro in a practical application
Bluetooth-Controlled Robotic Vehicle with Ultrasonic Obstacle Detection and Motion Sensing
This circuit features a SparkFun Pro Micro microcontroller interfaced with an L298N DC motor driver to control two DC motors, an HC-SR04 ultrasonic sensor for distance measurement, a Bluetooth module HM-10 for wireless communication, and an MPU-6050 for motion tracking. The Pro Micro is responsible for processing sensor data and managing motor speeds and directions via the motor driver. Power is supplied by a 5V battery connected to the Pro Micro and a separate battery case providing 12V to the motor driver.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of thermal temperture gun: A project utilizing Arduino Micro Pro in a practical application
Arduino Pro Mini-Based Battery-Powered Temperature and Laser Display System
This circuit features an Arduino Pro Mini microcontroller interfaced with a USB Serial TTL for programming and power, a momentary switch for user input, and a 9V battery for power supply. It includes a KY-008 laser emitter, a 0.96" OLED display, and an MLX90614 temperature sensor, all connected to the Arduino for a potential temperature measurement and display application.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of RP2040MacroKey: A project utilizing Arduino Micro Pro in a practical application
Dual Microcontroller Integration with Arduino Micro Pro and RP2040 Zero for Enhanced I/O Control
This circuit integrates an Arduino Micro Pro and an RP2040 Zero microcontroller, interconnected to share power and ground, as well as several GPIO pins. The RP2040 Zero is programmed with a basic setup and loop structure, indicating it is ready for further development. The design suggests a collaborative processing or sensor data sharing application between the two microcontrollers.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Copy of slave node: A project utilizing Arduino Micro Pro in a practical application
Arduino Pro Mini Based GPS and Temperature Tracking System with NRF24L01 Wireless Communication
This circuit features an Arduino Pro Mini as the central microcontroller, interfaced with a GPS NEO 6M module for location tracking, an ADXL345 accelerometer for motion sensing, a DS18B20 temperature sensor for environmental monitoring, and an NRF24L01 module for wireless communication. The circuit is powered by an 18650 Li-Ion battery through a voltage regulator, ensuring stable power supply to the components. A pushbutton is included for user input, and resistors are used for pull-up/down configurations and current limiting purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • USB-based projects such as keyboards, mice, and game controllers
  • Wearable electronics and IoT devices
  • Robotics and automation systems
  • Prototyping for small-scale embedded systems
  • Sensor integration and data logging

Technical Specifications

The following table outlines the key technical details of the Arduino Micro Pro:

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 33 mm x 18 mm

Pin Configuration and Descriptions

The Arduino Micro Pro has 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).
GND Ground Ground connection.
5V Power Output Regulated 5V output from the board.
RAW Power Input Unregulated input voltage (6-20V).
A0-A11 Analog Input 12 analog input pins (10-bit resolution).
D0-D13 Digital I/O 14 digital pins, 7 of which support PWM output.
TX/RX Serial I/O UART communication pins (TX = transmit, RX = receive).
SDA I2C Data Data line for I2C communication.
SCL I2C Clock Clock line for I2C communication.
RST Reset Resets the microcontroller.

Usage Instructions

How to Use the Arduino Micro Pro in a Circuit

  1. Powering the Board:

    • Connect the board to your computer via a USB cable for power and programming.
    • Alternatively, supply power through the VIN pin (7-12V recommended) or the RAW pin (6-20V).
  2. Programming the Board:

    • Open the Arduino IDE on your computer.
    • Select Arduino Leonardo as the board type (since the Micro Pro uses the same ATmega32U4 microcontroller).
    • Connect the board via USB and select the appropriate COM port.
    • Write your code and upload it to the board.
  3. 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 communication, use the UART (TX/RX), I2C (SDA/SCL), or SPI pins.

Important Considerations and Best Practices

  • Avoid exceeding the maximum current rating of 20 mA per I/O pin to prevent damage.
  • Use pull-up or pull-down resistors for stable digital input readings.
  • When using the board in USB HID (Human Interface Device) mode, ensure proper USB driver installation.
  • For power-hungry peripherals, consider using an external power source instead of USB power.

Example Code: Blinking an LED

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

// This example code blinks an LED connected to pin 13 of the Arduino Micro Pro.
// The LED will turn on for 1 second and off for 1 second in a loop.

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
}

Example Code: Reading an Analog Sensor

The following example reads data from a sensor connected to analog pin A0 and prints the value to the Serial Monitor:

// This example reads an analog value from pin A0 and prints it to the Serial Monitor.

void setup() {
  Serial.begin(9600); // Initialize serial communication at 9600 baud
}

void loop() {
  int sensorValue = analogRead(A0); // Read the analog value from pin A0
  Serial.println(sensorValue);      // Print the value to the Serial Monitor
  delay(500);                       // Wait for 500 milliseconds
}

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 drivers are installed for the Arduino Micro Pro.
  2. Unable to upload code to the board:

    • Verify that the correct board type (Arduino Leonardo) is selected in the Arduino IDE.
    • Ensure the correct COM port is selected.
    • Press the reset button on the board before uploading the code.
  3. The board is not powering on:

    • Check the power source and ensure it meets the voltage requirements.
    • Inspect the USB cable or external power connections for faults.
  4. Erratic behavior or unexpected resets:

    • Ensure the power supply is stable and not fluctuating.
    • Avoid drawing excessive current from the I/O pins.

FAQs

Q: Can the Arduino Micro Pro act as a USB keyboard or mouse?
A: Yes, the ATmega32U4 microcontroller supports USB HID functionality, allowing the board to emulate a keyboard, mouse, or other USB devices.

Q: What is the difference between the Arduino Micro Pro and the Arduino Leonardo?
A: Both boards use the ATmega32U4 microcontroller, but the Micro Pro is smaller and more compact, making it suitable for space-constrained projects.

Q: Can I power the board with a 3.7V LiPo battery?
A: No, the recommended input voltage is 7-12V via the VIN pin. For lower voltages, use a step-up converter to meet the required input voltage.

Q: How do I reset the board manually?
A: Press the reset button on the board to restart the microcontroller. This is useful for troubleshooting or entering the bootloader mode.