Attiny10 en Arduino IDE

Attiny10 control en su mínima expresión.

En este artículo analizaremos este microcontrolador, por que utilizarlo y cuales son sus puntos fuertes y sus debilidades.

Attiny10 Avr
Caracteristicas
High Performance, Low Power AVR® 8-Bit Microcontroller
Advanced RISC Architecture
– 54 Powerful Instructions
– Most Single Clock Cycle Execution
– 16 x 8 General Purpose Working Registers
– Fully Static Operation
– Up to 12 MIPS Throughput at 12 MHz
Special Microcontroller Features
 – In-System Programmable (at 5V, only)
– External and Internal Interrupt Sources
Non-volatile Program and Data Memories
– 512/1024 Bytes of In-System Programmable Flash Program Memory
 – 32 Bytes Internal SRAM
– Flash Write/Erase Cycles: 10,000
– Data Retention: 20 Years at 85°C / 100 Years at 25°C
Funciones periféricas
– QTouch® Library Support for Capacitive Touch Sensing (1 Channel)
– One 16-bit Timer/Counter with Prescaler and Two PWM Channels
– Programmable Watchdog Timer with Separate On-chip Oscillator
– 4-channel, 8-bit Analog to Digital Converter (ATtiny5/10, only)
– On-chip Analog Comparator

Por lo que podemos observar es que este microcontrolador esta basada en arquitectura de 8bits, lo que nos quiere indicar que sus señales análogas podrán ser muestreadas en un rango de 8 bits, que cuenta con 4 canales de entrada/ salida.

Hablando de memoria persistente, incorpora 1Kb de memoria flash y 32 bytes de ram, por lo que no podremos hacer algoritmos muy complejos.

En nuestro caso utilizaremos el oscilador interno a 8Mhz pero es posible reducir la frecuencia.

Tooling y uso en Arduino IDE.
Tooling y uso en Arduino IDE.

 

 

Lo primero será hacernos un programador tpi, en este caso utilizaremos un sketch que deberemos subir a una placa Arduino Uno o un clon de este.

Seguidamente descargamos el sktech para utilizar nuestro Arduino Uno como un programador TPI y utilizaremos el diagrama de conexión que tenemos a continuación. 
https://github.com/kimio-kosaka/avrboy/releases/download/v1.0.1/ATtiny4_5_9_10_20_40Programmer_2.zip
Otro aspecto muy importante es que para poder utilizar este microcontrolador hay que utilizar una versión de Arduino IDE inferior a la  1.8.9.

 

En mi caso utilizo Windows y he descargado la versión 1.8.4 no instalable (Portable) Arduino IDE 1.8.4

Seguidamente desde Arduino tendremos que añadir el repositorio de Attiny10.

https://kimio-kosaka.github.io/bitDuino10-arduinoTPI/package_bitDuino10-arduinoTPI_index.json

En Arduino IDE iremos a archivos->preferencias (atajo : ctrl + coma).



Luego tendremos que descargar el controlador bitduino.


Seguidamente para añadir Attiny10 a nuestra lista de componentes seguiremos la descripcion de la imagen de arriba.

Lo siguiente, será seleccionar la «placa» Attiny10.
Dato importante, para subir el sketch, el Attiny10 debe estar conectado al programador TPI (Nuestra placa arduino uno programada con el sketch TPI programmer).

#define PIN 2
#define DTIME 500

void setup() {
  pinMode(PIN, OUTPUT);
}

void loop() {
  digitalWrite(PIN, HIGH);
  delay(DTIME);
  digitalWrite(PIN, LOW);
  delay(DTIME);
}

Desde el Ide de Arduino ponemos el codigo y le damos al botón de subir.

Podemos observar lo sencillo que es programar este pequeño integrado.

¿Por que utilizar este modelo?

Puntos Fuertes:

  • Este microcontrolador es que es muy barato y es de muy bajo consumo.
  • Ofrece un alto grado de miniaturización a nuestros circuitos, es muy estable y tiene bastante soporte.

Puntos debiles:

  • Tiene una memoria muy escasa, un 1Kb de ram hará que incluso algunas librerías no entren en memoria y al compilar obtengas un desbordamiento de memoria.
  • La libreria de bitduino entra en conflicto con el compolador gcc si tienes instalado digispark y solo funciona en ide de arduino hasta la version 1.8.9 (Aunque siempre nos quedará Atmel Studio 7).

Deja una respuesta

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

Social Media Auto Publish Powered By : XYZScripts.com