ATtiny13/ATtiny13a/ATtiny25/ATtiny45/ATtiny85
Mi piace molto l’ATtiny e la sua programmazione, quindi ho creato una semplice scheda per usare Arduino UNO come ISP in modo rapido.
Con l’originale Arduino UNO, c’è una piccola variante perché i cloni hanno un altro 5V VCC sopra il pin RESET, invece Arduino UNO ha in IOREF, ma non preoccuparti guarda lo schema per fare la semplice modifica.
Schema
Nel progetto github puoi trovare il file fritzing con semplici esempi e schemi.
Materiale
Ho usato una scheda preforata.
Prototype board 3x7 su Aliexpress
Per cambiare la tensione (utilizzare 3.3v o 5v) e per abilitare il test LED, utilizzo un pulsante smd on/off invece di un ponticello.
La scheda è a doppia faccia così da poter collegare pin e componenti sopra e sotto la scheda.
- 1 Arduino Uno (Rev3)
Qui l'arduino Arduino UNO - Arduino MEGA 2560 R3 - Arduino Nano - Arduino Pro Mini
- 1 Electrolytic Capacitor capacitance 10µF
- 1 Ceramic Capacitor capacitance 100 nF
- 1 IC Holder pin spacing 300mil; pins 8
- 1 LED verde package 3 mm [THT]; colore verde (570nm); leg yes
- 1 LED giallo package 3 mm [THT]; colore giallo (595nm); leg yes
- 1 10kΩ resistenza resistenza 10kΩ; tolerance ±5%
- 2 220Ω resistenza resistenza 220Ω; tolerance ±5%
- header maschi form ♂ (male); pin spacing 0.1in (2.54mm); pins 8; row single
- header femmine form ♀ (female); pin spacing 0.1in (2.54mm); pins 4; row single
ATtiny13a Variant
Attiny 13a Aliexpress Attiny 13a discrete - Aliexpress Attiny 13a SMD
Ho comperato un ATtiny13a IC a basso costo (meno di 0,5 €), con 4 pin analogici e 2 PIN PWM / TIMER.
Scheda versione V01
Prima versione della scheda senza indicatori a led.
Questa versione funziona solo con Arduino clone.
Fritzing here.
Scheda versione V01 (Arduino UNO originale)
Come puoi vedere per Arduino Uno originale, devi aggiungere un cavo per la tensione di 5 V.
Fritzing here.
Scheda versione V02 (Led accensione)
Aggiungo un led verde per controllare se la scheda è alimentata.
Fritzing here.
Scheda versione V03 (test Led)
Aggiungo un led di prova molto utile, per verificare se tutto è collegato correttamente.
Fritzing here.
Scheda: Jumper se impostare il voltaggio
ATtiny può funzionare a varie tensioni, quindi inserisco un ponticello per selezionare la tensione di funzionamento a 3v o 5v.
Scheda: Test Led Jumper
Per verificare se è tutto ok aggiungo un led di test che può essere attivato da quel ponticello.
Scheda: condesatore per reset
Per impedire il ripristino quando si carica il codice È importante aggiungere un condensatore sul reset di arduino.
Scheda: condensatore per la tensione and resistenza per il reset
Altra cosa importante è il condensatore per stabilizzare la tensione e la resistenza di pullup sul pin di reset dell’ATtiny.
Assemblare la schda
La realizzazione è abbastanza semplice e il risultato è molto utile.
Come si adatta la scheda su Arduino
Montare la scheda su Arduino.
Come programmare un ATtiny: preparare ArduinoUNO per essere usato come un ISP
- Nell’Arduino IDE selezionare la scheda ArduinoUNO (Tool –> Board –> ArduinoUNO – Strumenti –> Scheda –> ArduinoUNO);
- Quindi aprire il file di esempio ArduinoISP (File –> Examples/Esempi –> 11.ArduinoISP –> ArduinoISP);
- Upload schetch su Arduino (Sketch –> Upload/Carica);
- Chiudi l’IDE.
Aggiungere il supporto per ATtiny: ATtiny13 / ATtiny13a
- Apri l’IDE di Arduino;
- Apri la voce di menu File> Preferenze;
- Immettere l’URL seguente negli URL del Manager schede aggiuntive URLs:https://mcudude.github.io/MicroCore/package_MCUdu… ;
- Apri la voce di menu Strumenti> Scheda> Gestione schede …;
- Attendi che la piattaforma finisca il download;
- Scorri verso il basso fino a quando non vedi la voce MicroCore e fai clic su di essa;
- Click Install;
- Al termine dell’installazione, chiudere la finestra Gestione schede .
Aggiungere il supporto per ATtiny: ATtiny25 / ATtiny45 / ATtiny85
- Apri l’IDE di Arduino ;
- Apri la voce di menu File> Preferenze ;
- Immettere l’URL seguente negli URL del Manager schede aggiuntive URLs:https://raw.githubusercontent.com/damellis/attiny… ;
- Apri la voce di menu Strumenti> Scheda> Gestione schede … ;
- Attendi che la piattaforma finisca il download ;
- Scorri verso il basso fino a quando non vedi la voce MicroCore e fai clic su di essa ;
- Click Install;
- Al termine dell’installazione, chiudere la finestra Gestione schede .
Come programmare un ATtiny: upload sull’ATtiny
- Inserisci la scheda sull’ArduinoUNO ;
- Inserisci l’ATtinyXX;
- Se la scheda è la v03 attiva il led di test altrimenti usa una breadboard e prendi il VCC dal pin in alto a destra di attiny e GND dal pin in basso a sinistra, quindi connetti il pin 0 (in basso a destra) a un led (sul prossimo video) ;
- Seleziona la scheda con le impostazioni corrette e la relativa porta (Tools –> Board/Strumenti –> Scheda);
- Selezionare Arduino come ISP (Tools –> Programmer –> Arduino as ISP/Strumenti –> Programmatore –> Arduino as ISP); nota: Arduino come ISP è diverso da ArduinoISP .
- Carica il programma (Sketch –> Upload from programmer / Schetch –> Carica tramite un programmatore).
Sample Sketch
Se la scheda è la v03 attiva il led di test altrimenti usa una breadboard e prendi il VCC dal pin in alto a destra di attiny e GND dal pin in basso a sinistra, quindi connetti il pin 0 (in basso a destra) a un led.
Un semplice scketch da caricare sull’ATtiny
#define PIN 0 void setup() { pinMode(PIN, OUTPUT); } void loop() { digitalWrite(PIN, LOW); delay(500); digitalWrite(PIN, HIGH); delay(500); }
Grazie
Nel progetto github puoi trovare alcune informazioni e schemi aggiuntivi.