ATtiny85: un microcontrolador que da mucho juego…

ATtiny85

Microchip es una empresa bastante conocida dentro del mundo maker y DIY, ya que tiene gran cantidad de productos para crear proyectos. Es famosa por sus microcontroladores programables para todo tipo de aplicaciones. Dentro de su gama de productos microntroladores hoy nos centraremos en el ATtiny85, una MCU de lo más práctico que querrás usar en tus futuros trabajos.

Además, debes saber que Digispark tiene también placas o módulos que integran este ATtiny85 con algunos elementos extra que se necesita para comenzar a programar este dispositivo, como la interfaz serie de conexión para poder pasar el código a la memoria del dispositivo. Su bajo coste, diminuto tamaño, y la compatibilidad con las placas de Arduino, terminan de hacer de esta placa una buena opción.

ATtiny85

pinout ATtiny85

Microchip ha creado un microcontrolador de bajo consumo y alto rendimiento de 8-bit. Se basa en la ISA AVR, que es de tipo RISC. Incluye memoria flash de 8KB, 512 Bytes de EEPROM, 512 Bytes de SRAM, 6 pines I/O de propósito general (GPIO), 32 registros de propósito geneal, un timer/counter de 8-bit con modos de comparación, un timer/counter de alta velocidad de 9-bit, USI, interrupciones internas y externas, 4 canales de 10-bit conversor A/D, watchdog programable con oscilador interno, tres modos de consumo de energía seleccionables por software, debugWIRE para depuración on-chip, etc.

Este ATtiny85 tiene un rendimiento de 20 MIPS trabajando a 20 Mhz. Para llegar a esa frecuencia, opera entre 2.7-5.5 voltios. Su rendimiento permite ejecutar casi a 1 MIPS por Mhz. Su empaquetado es simple, de tipo DIP y con 8 pines, aunque también lo hay con otros tipos de empaquetados si lo necesitas. Y me gustaría agregar, que puede funcionar bajo condiciones de temperatura bastante extremas, desde los -40 a los 85ºC, lo que lo hace apto para muchas aplicaciones industriales o en condiciones límite.

Conseguir documentación y herramientas

Si quieres conseguir documentación y herramientas sobre Microchip ATtiny85, puedes hacerlo desde la fuente oficial:

  • Ve a la página sobre el ATtiny5.
  • Luego, puedes seleccionar la pestaña de Documentos, para descargar datasheets y otro tipo de documentación en PDF de forma gratuita.
  • Puedes también seleccionar la pestaña Development Environment donde encontrarás los programas IDE o entornos de desarrollo para programar este tipo de microcontrolador, etc.

Recuerda que este microcontrolador es diferente a Arduino, y por tanto, tiene sus peculiaridades frente a Arduino IDE y la forma de programarlo que debes tener presente gracias a la documentación aportada.

Opciones para empezar con ATtiny85

placas ATtiny85

Este chip ATtiny85 puede costar poco más de 1€, o un poquito más si compras una placa o módulo con él integrado. Lo puedes encontrar en algunas tiendas especializadas para poder comenzar a probarlo. Aunque por separado es más barato, te recomiendo usar módulos para comenzar, ya que te evitarán tener que hacer algunos pasos de forma manual cuando lo quieres programar.

Aquí tienes algunas opciones en Amazon:

Algunas de las placas recomendadas, a parte de la citada anteriormente (Digispark), también tienes la ZengBucks que he puesto en el ejemplo de Amazon. Estas placas, entre otros elementos adicionales, incluyen una interfaz serie para su programación que podrás conectar directamente al puerto USB de tu PC para programarlas con el IDE.

¿Cómo programar?

¡Ojo, porque también lo puedes hacer desde Arduino IDE seleccionando el dispositivo ATtiny85 entre las placas del menú! Si no has comprado un módulo o placa con la interfaz para programarlo, y solo tienes el chip ATtiny85, puedes usar una placa Arduino como ISP (selecciona dicha opción desde el menú de Arduino IDE) conectada directamente a sus pines para programarla con Arduino IDE. Programas, luego retiras el chip programado, y lo puedes conectar al proyecto que necesites para hacerlo funcionar con una batería independiente…

Pasos para usar Arduino como ISP

Las placas Arduino integran su propio microcontrolador para programar desde Arduino IDE, ¿verdad? Hasta aquí todo es normal. Pues bien, si activas la opción Arduino como ISP del entorno de desarrollo, estarás consiguiendo que la propia placa de Arduino trabaje como un ISP para poder programar otros microcontroladores externos como el ATtiny85, enviando el programa con el que se desea trabajar a dicho chip. De esa forma no será necesario un módulo o un programador.

Para usar Arduino como ISP, lo que necesitas es:

  • Tu placa Arduino UNO.
  • Un PC con Arduino IDE instalado.
  • Cable USB conectando PC-Arduino.
  • Cables y elementos electrónicos necesarios para conectar los pines del microcontrolador que quieres programar a la placa Arduino.
  • El microcontrolador que quieres programar.

Bien, una vez lo tienes todo, abres Arduino IDE con tu placa conectada y todo el esquema de conexiones realizado como en las imágenes anteriores, y sigues estos sencillos pasos:

  1. Ve al menú Archivo de Arduino IDE.
  2. Selecciona la opción Ejemplos.
  3. Dentro del menú busca uno llamado Arduino ISP y seleccionalo.
  4. Ahora se abre el código de este sketch en la pantalla principal.
  5. Ahora le das a la flecha (Upload) para cargar el código en tu placa Arduino y estará listo para programar tu microcontrolador. Es posible que si tienes otra placa Arduino diferente, como Leonardo, etc., tengas que modificar un poco el código del ISP.
  6. Ahora tu placa Arduino está preparada para actuar como intermediario y programar el microcontrolador ATtiny85 usando el software IDE de Microchip. Es decir, lo único que hace la placa es aportar una interfaz para que el código que escribas en el IDE pase a través de ella y se aloje en la memoria del ATtiny85.
  7. Desde el IDE de Microchip usado, selecciona el microcontrolador ATtiny85 y comienza a programar usando el código adecuado. Lo cagas y listo. El lenguaje de programación puede ser C/C++, como los que soporta los IDEs aportados por Microchip.
  8. Ahora podrás desconectar el ATtiny85 de la placa Arduino y ponerle una batería para alimentarlo de forma independiente y que funcione.

La verdad es que es bastante sencillo. Recuerda mirar la documentación de Microchip ATtiny85 para saber cómo programarlo. Para mayor información, puedes mirar este enlace:

Ejemplos de código

Si es la primera vez que intentas programar uno de estos microcontroladores, puedes comenzar a usar algunos códigos de ejemplo e irlos probando o modificándolos para aprender mejor cómo funcionan. Tienes muchos ejemplos de código en la red, también en GitHub.

Aunque esté en inglés, también te recomiendo ver este vídeo para enseñarte lo básico del MCU ATtiny85 de Microchip en solo unos minutos:

Ahora espero que tengas más claro cómo usar el ATtiny85 de Microchip y que te resulte práctico para tus futuros proyectos como maker…


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.