AtTiny85 Program – terza puntata

Sei finalmente pronto a caricare il tuo primi sketch sull’AtTiny85 Program mediante l’Arduino ISP

Attiny85 Blink

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:

Attiny85 ProgramMode celect board

poi la tipologia di board: attiny85:

Attiny85 ProgramMode select type

e quindi la velocità a cui desideri farla lavorare:

Attiny85 ProgramMode select clock

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:

 

ATtiny85 pinout

puoi collegare quindi il led come da schema:

Attiny85 Blink

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.

  • Questo sito ed i suoi contenuti è fornito "così com'è" e Mauro Alfieri non rilascia alcuna dichiarazione o garanzia di alcun tipo, esplicita o implicita, riguardo alla completezza, accuratezza, affidabilità, idoneità o disponibilità del sito o delle informazioni, prodotti, servizi o grafiche correlate contenute sul sito per qualsiasi scopo.
  • Ti chiedo di leggere e rispettare il regolamento del sito prima di utilizzarlo
  • Ti chiedo di leggere i Termini e Condizioni d'uso del sito prima di utilizzarlo
  • In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei qualora siano presenti link al suddetto sito.

Permalink link a questo articolo: https://www.mauroalfieri.it/elettronica/attiny85-program-terza-puntata.html

14 commenti

Vai al modulo dei commenti

    • Claudio il 1 Aprile 2016 alle 11:44
    • Rispondi

    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.

    1. Ciao Claudio,
      penso sia possibile farlo, anche se non ho mai provato.

    • Claudio il 1 Aprile 2016 alle 23:58
    • Rispondi

    Salve, con lo stesso sistema è possibile programmare anche un ATmega2560?

    1. Ciao Claudio,
      puoi provare a cercare “arduino standalone” che spiega come programmare direttamente chip come l’atmega328 e atmega2560

    • Stefano il 22 Novembre 2016 alle 00:30
    • Rispondi

    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?

    1. Ciao Stefano,
      che versione dell’IDE stai utilizzando ?

        • Stefano il 25 Novembre 2016 alle 11:35
        • Rispondi

        1.6.12

        Ho provato con diverse “librerie” oltre quella che consigli te, ma il problema è il medesimo.

        1. Ciao Stefano,
          sull’arduino che usi come programmatore che sketch hai caricato?

            • Stefano il 26 Novembre 2016 alle 20:45

            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.

          1. 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.

            • Stefano il 7 Dicembre 2016 alle 10:37

            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.

          2. 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 ?

            • Stefano il 15 Dicembre 2016 alle 09:24

            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.

          3. Ciao Stefano,
            non ti resta che provare con la programmazione da linea di comando.
            Fammi sapere se risolvi tale anomalia.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.