Come programmare un Attiny85 da un Arduino Uno

Breve tutorial che mostra come programmare ATtiny85 dall'IDE di Arduino con l'aiuto di Arduino Uno!

Questo tutorial è stato richiesto dal mio amico Orlando, quindi spero che sia d'aiuto!

Commenti, preoccupazioni, feedback, richieste accolte favorevolmente:

@ NemesisContrer8

Passaggio 1: aggiungere il supporto per ATtiny85 al gestore della scheda URL Arduino

Per impostazione predefinita, l'IDE Arduino non supporta ATtiny85 è necessario aggiungere il supporto per Attiny85 al Board Manager di Arduino:

  • Dall'IDE di Arduino Vai su Arduino-> Preferenze, quindi scorri verso il basso fino a URL di Board Manager aggiuntivi
  • Copia e incolla quanto segue (se disponi già di un URL del board manager aggiungi una virgola prima di incollarlo)

Grazie David, uno dei fondatori di Arduino per aver scritto il codice!

//raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json

  • Premi "OK" in basso, quindi riavvia l'IDE di Arduino

Passaggio 2: installare il pacchetto scheda ATtiny

  • Dall'IDE di Arduino vai su Strumenti -> Scheda -> Gestione schede
  • Si aprirà una nuova scheda e nella parte superiore del tipo di scheda: attiny
  • Seleziona Installa su Attiny di David. A Mellis
  • Riavvia l'IDE di Arduino
  • La scheda ATtiny85 ora dovrebbe essere aggiunta! Vai su Strumenti -> Scheda -> Attiny85

Passaggio 3: impostare Arduino Uno in modalità ISP

Poiché ciò che vogliamo è poter programmare l'ATtiny85 dall'IDE di Arduino che richiede di masterizzare il bootloader sull'ATtiny85, dovremo "preparare" il pugno di Arduino caricando lo schizzo dell'ISP su di esso.

Nell'IDE di Arduino selezionare File -> Esempi -> 11. Arduino ISP -> ArduinoISP

lo schizzo dell'ISP dovrebbe aprirsi e caricarlo sul tuo Arduino Uno

Passaggio 4: come vengono etichettati i pin dei microcontrollori

Prima di effettuare i collegamenti, è importante sapere come vengono etichettati i pin dei microcrontrollori / circuiti integrati.

I numeri di pin utilizzati per programmare un chip sull'IDE Arduino si basano sul modo in cui il produttore del chip ha internamente chiamato / predisposto i pin. Il produttore dell'ATtiny85 è ATMEL (l'AT in AT tiny85-in realtà sta per AT MEL); è comune che i chip abbiano le prime due iniziali dell'azienda che li produce.

I pin sono raggruppati in gruppi chiamati "porte", queste porte sono etichettate A, B, C ecc. Ogni porta ha un numero di pin etichettati 0, 1, 2, 3 ecc. Che sporgono su diverse parti del chip, motivo per cui il pin fisico di un microcontrollore spesso sarà diverso dal numero di pin utilizzato durante la programmazione del chip.


Un esempio:

PB0 (nel foglio dati sopra) significa solo che il pin 0 si trova sulla porta B del chip.

Se il pin 0 si trovasse sulla porta A il nome sarebbe simile a PA0 ( P ort A pin 0 )

Per aggiungere alla complessità i pin possono avere più di una funzione ed essere etichettati più nomi.

Avvolgendolo tutto insieme! :

Scrivere un programma per accendere un LED sul pin 0 su ATtiny85 potrebbe inizialmente essere fonte di confusione perché solo guardando il chip, non c'è pin 0! Tuttavia, controllando il foglio dati di ATtiny85 dallo snippet ATMEL mostrato sopra il pin 0 si trova internamente sulla porta B del chip (ed è in realtà il pin fisico 5 del chip)!

Passaggio 5: collegamento di Arduino ai pin ATtiny

Avere un condensatore elettrolitico - 10uF è raccomandato ma ho usato un 22uF e ha funzionato bene- per impedire ad Arduino di riavviarsi è auto-connesso a GND e RESET su Arduino

Usa una breadboard e dei ponticelli per rendere i collegamenti tra Arduino Uno e ATtiny85:

 Arduino -> ATtiny85 5V Vcc GND GND Pin 13 Pin 2 Pin 12 Pin 1 Pin 11 Pin 0 Pin 10 Reset 

Passaggio 6: Rendere compatibile ATtiny85 Arduino

Per impostazione predefinita, qualsiasi nuovo chip di microcontrollore acquistato non potrà essere programmato con l'IDE Arduino immediatamente. Questo è il motivo per cui è necessario masterizzare il bootloader di Arduino sul chip per assicurarsi che il chip accetti tutti i programmi caricati tramite l'IDE di Arduino.

Elenco di controllo rapido prima di premere "masterizza bootloader"

  • Vai su Strumenti -> Board scorri verso il basso seleziona ATtiny25 / 45/85
  • In Strumenti -> Processore -> 8 MHz (interno)
  • Sotto Strumenti -> Programmatore -> Arduino come ISP
  • Verificare che tutte le selezioni di cablaggio, condensatore e scheda siano corrette
  • Infine seleziona Masterizza Bootloader
  • lasciare i cavi collegati verranno utilizzati nel passaggio successivo

Apparirà un messaggio che dice "Done Burning Bootloader"

Passaggio 7: caricamento dello schizzo lampeggiante

Verifica che ATtiny85 ora possa ricevere schizzi dall'IDE di Arduino caricando l'esempio di lampeggiamento

  • Vai a File -> Esempio -> 01.Basics -> lampeggiante
  • Modifica lo schizzo sostituendo il pin 13 con 0
  • Assicurati di avere ancora le impostazioni della scheda ATtiny85 dal passaggio precedente selezionato
  • Assicurarsi che tutti i cavi siano gli stessi del passaggio precedente
  • Carica lo schizzo
  • Collegare un LED collegando l'anodo al pin 0 (pin fisico 5) e il catodo a una resistenza 1K collegata a terra (pin fisico 4)
  • Sebbene non sia necessario un resistore poiché la batteria fornisce 3v (non abbastanza per far esplodere un LED), si consiglia di ridurre la luminosità del LED

Qualsiasi richiesta per futuri tutorial tutti ben accolti! Lascia un commento qui sotto

Articoli Correlati