Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Programa ATtiny85 eficientemente con Arduino Uno: solución multi-sensor económica

Componentes y suministros

Sobre este proyecto

Necesitaba leer múltiples sensores en distintas ubicaciones. Usar varios Arduino UNO sería costoso e innecesario, ya que solo requiero pocos pines PWM. El ATtiny85 es una alternativa barata y potente cuando no se necesitan muchos pines. Al ser solo un microcontrolador, requiere un Arduino UNO para programarlo. Aquí explico cómo hacerlo.

Configuración de pines del ATtiny85: Datasheet.

1. Configurar Arduino UNO como ISP (Programación en sistema)

  1. Conecta Arduino UNO al PC.
  2. Abre Arduino IDE → Archivo → Ejemplos → ArduinoISP → Sube el sketch.

2. Añadir soporte ATtiny85 a Arduino IDE

  1. Archivo → Preferencias → URLs adicionales del gestor de tarjetas: https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json
  2. Herramientas → Placa → Gestor de tarjetas.
  3. Busca "attiny by Davis A. Mellis", clic e instala.
  4. Ahora verás nueva entrada en menú Placa: ATtiny.

3. Conectar ATtiny85 con Arduino UNO

En protoboard:

Añade condensador 10µF entre RESET y GND del Arduino (ánodo en GND) para evitar auto-reset al programar.

4. Subir programa al ATtiny85

  1. Herramientas → Placa → ATtiny
  2. Herramientas → Procesador → ATtiny85
  3. Herramientas → Reloj → 8 MHz (interno)
  4. Herramientas → Programador → Arduino as ISP
  5. Importante: Herramientas → Quemar bootloader (para configurar fuses a 8 MHz; por defecto corre a 1 MHz).
  6. Abre ejemplo Blink, cambia pin 13 por 0, sube.

5. Probar ATtiny85 Blink

Desconecta todo del Arduino. Alimenta ATtiny con pila botón (3V) en Vcc/GND. El LED en pin 0 parpadeará. Proyectos de bajo coste, consumo y espacio; solo limitado por imaginación y pines PWM.

6. Convertir en Shield

Diseñé un shield compatible con Arduino UNO para facilitar la programación repetida. (Imágenes del proceso de fabricación incluidas).

Nota: Soy desarrollador de software, este es mi primer proyecto electrónico. Sugerencias bienvenidas.

Código

Programa Blink (C/C++)

/* Blink
   Enciende un LED un segundo, apaga un segundo, repetidamente.
   Este código es de dominio público.
   Modificado 8 May 2014 por Scott Fitzgerald */
void setup() {
  pinMode(0, OUTPUT); // Pin 0 en ATtiny85
}
void loop() {
  digitalWrite(0, HIGH);
  delay(1000);
  digitalWrite(0, LOW);
  delay(1000);
}

Esquemáticos

Diagramas Fritzing de conexiones y shield casero.

Proceso de manufactura

  1. Construye un reloj en tiempo real con Arduino para horarios de oración islámica
  2. Alcancía Inteligente: Controla un Aceptador de Monedas con Arduino Nano
  3. Controla un LED por Bluetooth con Arduino – Guía DIY paso a paso
  4. Calculadora Básica con Arduino UNO - Proyecto Fácil para Principiantes
  5. Cómo mostrar imágenes en una pantalla TFT LCD de 1.17 pulgadas con Arduino UNO
  6. Construir una pantalla de persistencia de visión portátil con Arduino UNO y ATtiny85
  7. Control de Matriz LED 8×8 con Arduino Uno: Guía Paso a Paso
  8. Construye un Cubo LED 4x4x4 con Arduino Uno y 1Sheeld – Proyecto LED Interactivo
  9. Medición Precisa de Radiación Solar con Arduino UNO y Shield Ethernet
  10. Control de Ventilador PWM de 4 Pines a 25 kHz con Arduino Uno – Montaje, Código y Pruebas
  11. Programación de Extensiones en Python con C: Crea Módulos Nativos Rápidos