Sei finalmente pronto a caricare il tuo primi sketch sull’AtTiny85 Program mediante l’Arduino ISP
Leggi gli articoli precedenti dedicati all’AtTiny85 Program se non sai come impostare l’IDE per programmare l’AtTiny85 o come impostare arduino come ISP programmer.
Dopo aver trasferito lo sketch corretto su arduino, impostato Arduino as ISP ed eseguito i collegamenti corretti puoi aprire nell’IDE il tuo primo sketch per l’AtTiny85 .. il blink 🙂
Configura l’IDE per trasferire lo sketch
L’ultimo passaggio prima di trasferire lo sketch è selezionare l’AtTiny85 come scheda a cui trasferire lo sketch, primo passo è selezionare come board attiny:
poi la tipologia di board: attiny85:
e quindi la velocità a cui desideri farla lavorare:
io non ho aggiunto quarzi esterni per cui posso usare solo i valori indicati come “internal” per cui ho scelto la massima velocità possibile per l’ATtiny85 program in modalità senza quarzo, clock, esterno.
Collega il led all’AtTiny85
Il pinout dell’AtTiny85 è il seguente:
puoi collegare quindi il led come da schema:
e scrivendo 0 nello sketch del blink, ti riferisci al PB0 ossia il pin 5.
Trasferire lo sketch sul AtTiny85 Program
il primo sketch che puoi provare con l’AtTiny85 Program è il Blink:
void setup() { pinMode(0, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(0, HIGH); // turn the LED on delay(1000); // wait for a second digitalWrite(0, LOW); // turn the LED off delay(1000); // wait for a second }
che come avrai notato ho modificato alle linee 2,7 e 9 sostituendo al classico 13 ( riferimento al pin 13 di arduino ) il numero 0 ( corrispondente al pin 5 dell’attiny85 ) come puoi vedere nel pinout sopra.
Seleziona la porta e trasferisci lo sketch.
Se tutto è andato a buon fine puoi collegare il led al pin 5 ( PB0 ) dell’Attiny85 Program e noterai il lampeggio con intervallo un secondo.
14 commenti
Vai al modulo dei commenti
Salve, sto progettando un orologio a nixie: secondo lei, è possibile
utilizzare un AtTiny85 per leggere ora e data tramite i2c da un
ds1307, e trasferirla ad una serie di tre
pcf8574 (ore, minuti, secondi, o giorno, mese, anno)?
Grazie.
Autore
Ciao Claudio,
penso sia possibile farlo, anche se non ho mai provato.
Salve, con lo stesso sistema è possibile programmare anche un ATmega2560?
Autore
Ciao Claudio,
puoi provare a cercare “arduino standalone” che spiega come programmare direttamente chip come l’atmega328 e atmega2560
ciao Mauro,
Grazie per il tuo lavoro sempre ineccepibile.
Io ho provato a programmare più di un attiny85 con differenti arduino: uno, nano, yun, ma ottengo sempre il seguente messaggio di errore:
”
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
Errore durante il caricamento dello sketch
”
Come posso risolvere?
Autore
Ciao Stefano,
che versione dell’IDE stai utilizzando ?
1.6.12
Ho provato con diverse “librerie” oltre quella che consigli te, ma il problema è il medesimo.
Autore
Ciao Stefano,
sull’arduino che usi come programmatore che sketch hai caricato?
Arduino ISP, caricato dagli esempi e messo sui vari arduino che ho provato.
Poi metto come programmatore “arduino as ISP”
Collego tutto come indicato da te.
Apro un secondo sketch (un banale blink), provo a caricare lo sketch e mi da quell’errore, poi provo anche “carica tramite un programmatore”, ma anche lì, niente.
Autore
Ciao Stefano,
ho letto un po in internet le varie soluzioni in quanto a me non è mai capitato.
L’ipotesi più accreditata è che sia stato caricato uno sketch che richiede un quarzo esterno.
I tentativi in tal caso possono essere:
1. costruisci un circuito con 2 condensatori e un quarzo per fornire il giusto clock esterno;
2. provi con la programmazione da linea di comando, es: avrdude -F -c avrisp -p [tuomicro] -P [porta] -U flash:w:[atmegaBoot] -b 19200 -v -v -v -v
Direi che se riesci con la soluzione 2 e vuoi inviarmi un tutorial in merito lo pubblico a tuo nome.
Ciao Mauro, scusa per il ritardo, ma ero fuori Italia.
Ho provato già con il quarzo esterno e il risultato è stato il medesimo, sfortunatamente.
La programmazione con linea di comando sinceramente non so proprio come eseguirla, sono un hobbysta con una formazione da ingegneria meccanica, già sapere C e fare i circuiti è anomalo per la mia categoria 😀 (i colleghi mi chiamano “mezzosangue”).
Hai modo da indirizzarmi a qualche tutorial su programmazione con linea di comando?
Nel frattempo ho ordinato un programmatore esterno da pochi euro che dovrebbe arrivarmi a breve.
Autore
Ciao Stefano,
purtroppo non ho scritto articoli sulla programmazione da linea di comando, dovresti cercare sul web se qualche altro appassionato/blogger lo ha fatto.
Il tuo caso è davvero anomalo se anche con il quarzo non funziona, sei sicuro di non aver, erroneamente, bruciato gli AtTiny85 ?
Sicuro al 100%, anche perchè ne ho provati più di uno e sono alimentati esattamente come li hai alimentati te con il tuo circuito su breadboard.
Autore
Ciao Stefano,
non ti resta che provare con la programmazione da linea di comando.
Fammi sapere se risolvi tale anomalia.