Arduino Micro

Arduino Micro
¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)

El Arduino Micro es una placa basada en el microcontrolador ATmega32U4, y fue desarrollada en conjunto con Adafruit. Dispone de 20 pines de entrada y salida digitales, de los cuales 7 se pueden usar como salidas PWM y 12 como entradas analógicas. Tiene un oscilador de cristal de 16 MHz, una conexión micro USB, un encabezado ICSP y un botón de reset.

La placa Arduino Micro Contiene todo lo necesario para soportar el microcontrolador. Simplemente conectarla al ordenador con un cable micro USB para comenzar. Tiene un factor de forma que le permite colocarse fácilmente en una placa de pruebas.

arduino-micro
Arduino Micro

La placa Arduino Micro es similar a la placa Arduino Leonardo en que el ATmega32U4 tiene incorporada capacidad de comunicación por USB, eliminando la necesidad de un procesador secundario, como en el caso de la placa Arduino UNO R3.

Esto permite que la Arduino Micro al ceonctarse a un ordenador mediante el puerto micro USB aparezca como un mouse y teclado, además de un puerto serie o COM virtual (CDC).

 

 

Características de la Arduino Micro

    • Microcontrolador: ATmega32U4
    • Voltaje de funcionamiento: 5 V
    • Voltaje de entrada (recomendado): 7-12 V
    • Voltaje de entrada (límite): 6-20 V
    • Pines de E/S digitales: 20
    • Canales PWM: 7
    • Canales de entrada analógica: 12
    • Corriente CC por pin de E/S: 20 mA
    • Corriente CC para pin de 3.3V: 50 mA
    • Memoria Flash: 32 KB (ATmega32U4) de los cuales 4 KB utiliza el gestor de arranque
    • SRAM: 2,5 KB (ATmega32U4)
    • EEPROM: 1 KB (ATmega32U4)
    • Velocidad de reloj: 16 MHz
    • Led incorporado: pin 13
    • Longitud: 48 mm
    • Ancho: 18 mm
    • Peso: 13 g

 

Microcontrolador Atmega 32U4

El Atmega32U4 es un microcontrolador de alto rendimiento basado en RISC AVR de 8 bits con de bajo consumo, 32 KB de memoria FLASH, SRAM de 2,5 KB, EEPROM de 1 KB, interfaz USB 2.0 de velocidad completa/baja velocidad, convertidor A/D de 12 canales y 10 bits e interfaz JTAG para depuración en chip.

El microcontrolador alcanza un rendimiento de hasta 16 MIPS a 16 MHz. Funciona con un voltaje entre 2.7-5.5 voltios.

atmega32u
Microcontrolador Atmega 32U

Al ejecutar poderosas instrucciones en un solo ciclo de reloj, el dispositivo logra rendimientos cercanos a 1 MIPS por MHz, lo que le permite optimizar el consumo de energía en comparación con la velocidad de procesamiento.

 

Alimentación de la Arduino Micro

La placa Arduino Micro puede alimentarse a través de la conexión micro USB o con una fuente de alimentación externa. La placa selecciona la fuente de poder automáticamente.

La alimentación externa (no por USB) puede provenir de una fuente de alimentación de CA-CC o de una batería. Los cables de una batería o fuente de alimentación de CC se pueden conectar a los pines GND y Vin.

La placa Arduino Micro puede funcionar con un suministro externo de 6V a 20V. Sin embargo, si se suministra con menos de 7V, el pin de 5V puede suministrar menos de cinco voltios (el voltaje mínimo de funcionamiento) y la placa puede volverse inestable.

Si usa más de 12V, el regulador de voltaje puede sobrecalentarse y dañar la placa. El rango recomendado es de 7V a 12V.

Los pines de alimentación son los siguientes:

  • Vin: El voltaje de entrada a la placa Arduino Micro cuando está utilizando una fuente de alimentación externa (a diferencia de los 5V de la conexión USB u otra fuente de alimentación regulada). Puede suministrar voltaje a través de este pin.
  • 5V: La fuente de alimentación regulada utilizada para alimentar el microcontrolador y otros componentes en la placa. Esto puede provenir de Vin a través de un regulador incorporado, o puede ser suministrado por USB u otro suministro regulado de 5V.
  • 3V: Un suministro de 3,3V generado por el regulador de la placa. El consumo máximo de corriente es 50 mA.
  • GND: Pines de tierra.

 

Memoria de la Arduino Micro

El microcontrolador ATmega32U4 de la placa Arduino Micro tiene una capacidad de 32 KB (con 4 KB utilizados para el gestor de arranque). También tiene 2.5 KB de SRAM y 1 KB de EEPROM (que se puede leer y escribir con la biblioteca EEPROM).

 

Entradas & salidas de la Arduino Micro

Cada uno de los 20 pines digitales de la placa Arduino Micro se puede utilizar como entrada o salida, utilizando las funciones pinMode (), digitalWrite() y digitalRead().

Cada pin funciona a 5 voltios y pueden proporcionar o recibir 20mA como condición de operación recomendada.

Tienen una resistencia de pull-up interna (que está desconectada por defecto) de 20-50 k ohmios. La carga máxima es de 40 mA es el valor que no debe superarse para evitar daños permanentes al microcontrolador.

arduino-micro-pinout-diagram
Diagrama de pines de la placa Arduino Micro

Además, algunos pines tienen funciones especializadas:

  • Serial: pines 0 (RX) y 1 (TX). Se utiliza para recibir (RX) y transmitir (TX) datos en serie TTL utilizando la capacidad de serie de hardware del ATmega32U4. Hay que tener en cuenta que en la placa Arduino Micro, la clase Serial se refiere a la comunicación USB (CDC). Para TTL serial en los pines 0 y 1, use la clase Serial1.
  • TWI: pines 2 (SDA) y 3 (SCL). Admite la comunicación TWI (o I2C) mediante la biblioteca Wire.
  • Interrupciones externas: pines 0 (RX), 1 (TX), 2, 3 y 7. Estos pines pueden configurarse para activar una interrupción en nivel bajo, en flanco ascendente o descendente, o un cambio de nivel. Vea la función attachInterrupt() para más detalles.
  • PWM: pines 3, 5, 6, 9, 10, 11 y 13. Proporcionan salida PWM de 8 bits con la función analogWrite().
  • SPI: están en el encabezado ICSP. Estos pines admiten la comunicación SPI mediante la biblioteca SPI. Tenga en cuenta que los pines SPI no están conectados a ninguno de los pines de E/S digitales como están en la placa Arduino Uno R3, solo están disponibles en el conector ICSP y en los pines cercanos etiquetados MISO, MOSI y SCK.
  • RX_LED/SS: Este es un pin adicional en comparación con la placa Arduino Leonardo. Está conectado al RX_LED que indica la actividad de transmisión durante la comunicación USB, pero también se puede utilizar como pin de selección esclavo (SS) en la comunicación SPI.
  • LED: pin 13. Hay un LED incorporado conectado al pin digital 13. Cuando el pin tiene un valor ALTO, el LED está encendido, cuando el pin está en BAJO, está apagado.
  • Entradas analógicas: pines A0-A5, A6 – A11 (en los pines digitales 4, 6, 8, 9, 10 y 12). La placa Arduino Micro tiene un total de 12 entradas analógicas, los pines de A0 a A5 están etiquetados directamente en los pines, y los otros a los que puede acceder en código usando las constantes de A6 a A11 están compartidos respectivamente en los pines digitales 4, 6, 8, 9, 10 y 12. Todos se pueden utilizar también como E/S digitales. Cada entrada analógica proporciona 10 bits de resolución (es decir, 1024 valores diferentes). Por defecto, las entradas analógicas miden desde tierra (GND) hasta 5V, aunque es posible cambiar el extremo superior de su rango utilizando el pin AREF y la función analogReference().

Hay un par de otros pines en la placa:

  • AREF: Tensión de referencia para las entradas analógicas (ADC). Usado con analogReference().
  • RESET: Es un pin de entrada. Llevar este pin a tierra (GND) reiniciará el microcontrolador. Normalmente se usa para agregar un botón de reinicio a las placas de expansión (shields) que bloquean el que está disponible en la placa principal.

 

Comunicaciones en la Arduino Micro

La placa Arduino Micro tiene varias facilidades para comunicarse con un ordenador, otra placa de la familia Arduino & Genuino u otros microcontroladores.

El microcontrolador Atmega32U4 proporciona comunicación serial UART TTL (5V), que está disponible en los pines digitales 0 (RX) y 1 (TX). El ATmega32U4 también permite la comunicación en serie (CDC) a través de USB y aparece como un puerto de comunicación virtual para el sistema operativo del ordenador.

El chip también actúa como un dispositivo USB 2.0 de velocidad completa, utilizando controladores COM y USB estándar. En Windows, se requiere un archivo .inf para la correcta instalación del manejador (driver).

El entorno de desarrollo Arduino IDE incluye un monitor en serie que permite enviar datos de texto simples hacia y desde la placa. Los LED RX y TX de la placa parpadearán cuando los datos se transmitan a través de la conexión USB del ordenador (pero no para la comunicación en serie en los pines 0 y 1).

La librería SoftwareSerial permite la comunicación serial en cualquiera de los pines digitales de la placa Arduino Micro.

El microcontrolador ATmega32U4 también es compatible con la comunicación I2C (TWI) y SPI. El entorno de desarrollo Arduino IDE incluye la libreria Wire para simplificar el uso del bus I2C. Para la comunicación SPI, use la libreria SPI.

La placa Arduino Micro aparece como un teclado y un mouse genéricos para el sistema operativo del ordenador, y se puede programar para controlar estos dispositivos de entrada mediante las clases de teclado y mouse.

 

Programación de la Arduino Micro

La placa Arduino Micro se puede programar con el entorno de desarrollo Arduino IDE.

arduino ide
Arduino IDE

El ATmega32U4 en la placa Arduino Micro viene pre-programado con un gestor de arranque (bootloader) que le permite cargar un nuevo programa sin el uso de un programador hardware externo. Se comunica utilizando el protocolo original STK500.

stk500 programmer
Programador STK500

También puede omitir el gestor de arranque y programar el microcontrolador directamente a través del conector ICSP (In-Circuit Serial Programming – Programación serial en circuito) usando Arduino ISP o similar.

 

Reinicio automático e inicio del cargador de arranque en la Arduino Micro

En lugar de la presión física del botón de reinicio antes de una carga de programación, la placa Arduino Micro está diseñada de manera que permite que se reinicie mediante software. El reinicio se activa cuando el puerto serie o COM virtual (CDC) de la Arduino Micro se abre a 1200 baudios y luego se cierra.

Cuando esto sucede, el microcontrolador se reiniciará, interrumpiendo la conexión USB al ordenador (lo que significa que el puerto serial o COM virtual desaparecerán).

Una vez que el microcontrolador se reinicia, el cargador de arranque (bootlader) se inicia y permanece activo durante unos 8 segundos. El cargador de arranque también se puede iniciar presionando el botón de reinicio en la Arduino Micro.

Tenga en cuenta que cuando la placa se enciende por primera vez, saltará directamente al programa del usuario, si está presente, en lugar de iniciar el gestor de arranque.

Debido a la forma en que se reinicia el microcontrolador en la Arduino Micro, es mejor dejar que el entorno de desarrollo Arduino IDE intente el reinicio de la placa antes de cargar el programa, especialmente si tiene la costumbre de presionar el botón de reinicio antes de cargar el programa en otras placas.

Si el software no puede reiniciar la placa, siempre puede iniciar el gestor de arranque presionando el botón de reinicio en la placa.

También te puede interesar