Saltar al contenido

Programador para ATTINY

Programador ATtiny 85-45

Este tutorial muestra como programar un microcontrolador Attiny45 o un ATtiny85 utilizando una placa Arduino y el entorno de programación Arduino. El ATtiny45 y el ATtiny85 son unos microprocesadores pequeños (8-patas) y muy económicos, pudiendo reemplazar a todo un arduino en su trabajo. Físicamente son iguales pero al Ttiny85 tiene el doble de memoria que el ATtiny45 y por lo tanto podemos utilizar programas más complejos.

Materiales y Software

  • Arduino Uno, Duemilanove o Nano (con un ATmega328, no son válidos las placas con ATmega168).
  • ATtiny45 o ATtiny85 (encapsulado 8-patillas)
  • Un condensador de 10 uF.
  • Una placa de prototipado (breadboard-protoboard).
  • Cables de conexionado.
  • IDE Arduino.

El microcontrolador ATtiny45 / ATtiny85

Microcontrolador ATTINY85
Microcontrolador ATTINY85
PinOut de ATtiny 85-45
Este es el pinout del ATtiny 45-85

Instalando en Arduino el soporte para ATtiny45 / ATtiny85

  • Descarga: attiny45_85.zip
  • Busca la carpeta de Arduino “sketchbook” (puedes encontrar su situación en el diálogo de preferencias del entorno de programación Arduino)
  • Crea una nueva subcarpeta llamada «hardware» en la carpeta “sketchbook”.
  • Copia la carpeta attiny45_85 de attiny45_85.zip a la carpeta “hardware”.
  • Reinicia el entorno de programación Arduino.

Transformando la placa de Arduino en un programador

Ahora utilizaremos la placa Arduino para programar el ATtiny45 o ATtiny85. Primero necesitaremos convertir la placa Arduino en un programador ISP ( «In-System Programmer»).
Para ello:

  • Arranca el entorno de programación Arduino.
  • Abre el sketch “ArduinoISP” del menú de ejemplos (examples).
  • Selecciona la placa y el puerto serie que corresponden a tu placa Arduino.
  • Carga el sketch “ArduinoISP”.

Conexionado entre Arduino y ATtiny

Conectar la placa Arduino al ATtiny tal como se indica en el siguiente diagrama.

Conexionado Arduino/ATtiny
Conexionado Arduino/ATtiny
Conexionado Arduino/ATtiny
Conexionado Arduino/ATtiny

Conexionado de las patillas:

  • ATtiny Pin 7 (D2) a Arduino D13 (SCK)
  • ATtiny Pin 6 (D1) a Arduino D12 (MISO)
  • ATtiny Pin 5 (D0) a Arduino D11 (MOSI)
  • ATtiny Pin 1 (Reset-D5) a Arduino D10

Programando el ATtiny45 o ATtiny85

Ahora vamos a utilizar el Arduino como un programador ISP para cargar un programa BLINK al ATtiny45/85:

  • Colocamos el ATtiny en nuestro Programador «Arduino as ISP».
  • Abrimos el sketch “Blink” desde el menú de ejemplos (examples).
  • Cambiamos los números de pin de 13 a 0. (PIN del ATtiny es el n°5 que corresponde al PIN Digital 0).
  • Seleccionamos «ATtiny45 (w/ Arduino as ISP)» o «ATtiny85 (w/ Arduino as ISP)» en el menú Herramientas/Placa (Tools > Board) (Indicando previamente el puerto serie al que está conectada la placa Arduino).
  • Cargamos el sketch.
  • Retiramos el ATtiny para colocarlo en nuestro proyecto (en un breadboard o protoboard).

Es probable que en la programación aparezca el siguiente mensaje, pero no hay que preocuparse la programación debería haberse efectuado correctamente:

avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85

Realizamos el código corresponidente prestando atención a los pines que utilizaremos en el ATtiny.

void setup()
{
  pinMode(0, OUTPUT);
}
void loop()
{
  digitalWrite(0, HIGH);
  delay(1000); // Wait for 1000 millisecond(s)
  digitalWrite(0, LOW);
  delay(1000); // Wait for 1000 millisecond(s)
}

Ahora, conectamos el LED y comprobamos que parpadea suministrando la tensión correspondiente.

Prueba de funcionamiento Blink en ATtiny
Blink en ATtiny

Referencia

Los siguientes comandos de Arduino deberían funcionar correctamente:

NOTA: Estos comandos son los específicos de Arduino (dependen de la velocidad del micro, interrupciones, registros específicos…) , desde luego los comandos standard del lenguaje de programación «C» : «if»‚ «case» y similares también funcionan.

Toda esta información esta basada en varios sitios de internet, la mayor parte de «http://highlowtech.org/?p=1229» y mi experiencia personal. Todo esto funciona perfecto. Hé creado varios proyectos y hay muchos funcionando gracias a este programador de ATtiny.

No te olvides de compartir en...

Deja una respuesta

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