Icono del sitio El Profe Alegría

Programador para ATTINY

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

El microcontrolador ATtiny45 / ATtiny85

Microcontrolador ATTINY85
Este es el pinout del ATtiny 45-85

Instalando en Arduino el soporte para ATtiny45 / ATtiny85

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:

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 de las patillas:

Programando el ATtiny45 o ATtiny85

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

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.

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...
Salir de la versión móvil