Earn Maker Points on Every Order! Learn More!

Arduino Micro

Back to Blog
Arduino Micro - Arduino Micro - Arduino Micro - Arduino Micro

Arduino Micro

Arduino Micro is the smallest board of the family, easy to integrate it in everyday objects to make them interactive.
The Micro is based on the ATmega32U4 microcontroller featuring a built-in USB which makes the Micro recognizable as a mouse or keyboard.

The Micro is 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 MHz crystal 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 board 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. It also has other implications for the behavior of the board; these are detailed on the getting started page.

The ATmega32U4 has 32 KB (with 4 KB used for the bootloader). It also has 2.5 KB of SRAM and 1 KB of EEPROM

 

Arduino / Genuino Micro is open-source hardware! You can build your own board using the following files:

Datasheet – http://www.atmel.com/Images/Atmel-7766-8-bit-AVR-ATmega16U4-32U4_Datasheet.pdf

Eagle Files – https://content.arduino.cc/assets/arduino-micro-reference.zip

Schematics – https://content.arduino.cc/assets/arduino_micro_schematic.pdf

Board Size – http://arduino.cc/documents/dimensioniMicro.dxf

 

Technical Specifications:

  • Microcontroller: ATmega32u4
  • Input Voltage (recommended): 7-12V
  • Maximum Voltage range: 6-20V
  • Operating Voltage: 5V
  • Digital I/O Pins: 20
  • PWM Channels: 7
  • Analog Input Pins: 12
  • Max DC Current per I/O Pin: 40 mA
  • Max 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

Arduino Micro Pin Layout

Arduino Micro Pinout

Power Supply:

VI: The input voltage to the MICRO board when it’s using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin.

5V: The regulated power supply used to power the microcontroller and other components on the board. This can come either from VIN via an on-board regulator, or be supplied by USB or another regulated 5V supply.

3V: A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.

GND: Ground pins.

Input-Output Pins

Digital I/O Pins: 20 digital i/o pins on the Micro can be used as an input or output, using pinMode(),digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive 20 mA as recommended operating condition and has an internal pull-up resistor (disconnected by default) of 20-50 k ohm. A maximum of 40mA is the value that must not be exceeded to avoid permanent damage to the microcontroller.

Analog Inputs: A0-A5, A6 – A11 (on digital pins 4, 6, 8, 9, 10, and 12). The Micro has a total of 12 analog inputs, pins from A0 to A5 are labeled directly on the pins and the other ones that you can access in code using the constants from A6 through A11 are shared respectively on digital pins 4, 6, 8, 9, 10, and 12. All of which can also be used as digital I/O. Each analog input provide 10 bits of resolution (i.e. 1024

Communication

Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data using the ATmega32U4 hardware serial capability. Note that on the Micro, the Serial class refers to USB (CDC) communication; for TTL serial on pins 0 and 1, use the Serial1 class.

TWI: 2 (SDA) and 3 (SCL). Support TWI communication using the Wire library.

External Interrupts: 0(RX), 1(TX), 2, 3 and 7. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

PWM: 3, 5, 6, 9, 10, 11 and 13. Provide 8-bit PWM output with the analogWrite() function.

SPI: on the ICSP header. These pins support SPI communication using the SPI library. Note that the SPI pins are not connected to any of the digital I/O pins as they are on the Uno, they are only available on the ICSP connector and on the nearby pins labelled MISO, MOSI and SCK.

RX_LED/SS This is an additional pin compared to the Leonardo. It is connected to the RX_LED that indicates the activity of transmission during USB communication, but is can also used as slave select pin (SS) in SPI communication.

There are couple of other pins in the board:

LED: 13: There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it’s off.

different values). By default, the analog inputs measure from ground to 5 volts, though is it possible to change the upper end of their range using the AREF pin and the analogReference() function.

AREF: Reference voltage for the analog inputs. Used with analogReference().

Reset: Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board

Share this post

Leave a Reply

Back to Blog