- Componenti necessari per la programmazione di ATtiny85
- Chip microcontrollore ATtiny85 - Introduzione
Il chip per microcontrollore ATtiny85 è un'alternativa economica e potente ad altri microcontrollori Arduino, specialmente quando vuoi ridurre il tuo progetto. Il chip dispone di 8 pin di cui sei sono pin I / O (incluso reset) e due sono pin di alimentazione. Ma come si programma dato che non ha un'interfaccia USB come le altre schede microcontrollore? Quindi, in questo articolo, ti guiderò attraverso il processo di programmazione di ATtiny85 dall'IDE di Arduino con l'aiuto di Arduino Uno. Fondamentalmente, useremo Arduino UNO come programmatore ATtiny85.
Componenti necessari per la programmazione di ATtiny85
- Arduino UNO
- ATtiny85 IC
- GUIDATO
- Resistenza da 220 ohm
- Breadboard
- Cavi per ponticelli
Chip microcontrollore ATtiny85 - Introduzione
ATtiny85 di Atmel è un microcontrollore a 8 bit ad alte prestazioni e bassa potenza basato sull'architettura RISC avanzata. Questo chip del microcontrollore presenta una memoria flash ISP da 8 KB, 512B EEPROM, SRAM da 512 byte, 6 linee I / O per uso generico, 32 registri di lavoro per uso generico, un timer / contatore a 8 bit con modalità di confronto, uno ad alta velocità a 8 bit timer / contatore, USI, interrupt interni ed esterni, convertitore A / D a 10 bit a 4 canali, timer watchdog programmabile con oscillatore interno, tre modalità di risparmio energetico selezionabili dal software e debugWIRE per il debug su chip. Il piedino ATtiny85 è riportato di seguito:
La maggior parte dei pin I / O del chip ha più di una funzione. Controlla la tabella riportata di seguito per conoscere la descrizione dei pin ATtiny85 per ogni pin.
N. pin |
Nome pin |
Descrizione pin |
1 |
PB5 (PCINT5 / ADC0 / dW) |
PCINT5: Pin Change Interrupt 0, Source5 RESET: reimposta il pin ADC0: canale di ingresso ADC 0 dW: debug di I / O WIRE |
2 |
PB3 (PCINT3 / XTAL1 / CLKI / ADC3) |
PCINT3: Pin Change Interrupt 0, Source3 XTAL1: Pin dell'oscillatore in cristallo1 CLKI: ingresso clock esterno ADC3: canale di ingresso ADC 3 |
3 |
PB4 (PCINT4 / XTAL2 / CLKO / OC1B / ADC2) |
PCINT4: Interrupt cambio pin 0, sorgente 4 XTAL2: Pin 2 dell'oscillatore in cristallo CLKO: Uscita orologio di sistema OC1B: uscita B confronto timer / contatore1 ADC2: canale di ingresso ADC 2 |
4 |
GND |
Pin di terra |
5 |
PB0 (MOSI / DI / SDA / AIN0 / OC0A / AREF / PCINT0) |
MOSI: uscita dati master SPI / ingresso dati slave DI: ingresso dati USI (modalità a tre fili) SDA: USI Data Input (modalità a due fili) AIN0: comparatore analogico, ingresso positivo OC0A: Timer / Counter0 Compare Match A output AREF: Riferimento analogico esterno PCINT0: Pin Change Interrupt 0, Source 0 |
6 |
PB1 (MISO / D0 / AIN1 / OC0B / OC1A / PCINT1) |
MISO: ingresso dati master SPI / uscita dati slave DO: USI Data Output (modalità a tre fili) AIN1: comparatore analogico, ingresso negativo OC0B: Timer / Counter0 Compare Match B Output OC1A: Timer / Counter1 Compare Match A Output PCINT1: Pin Change Interrupt 0, Source 1 |
7 |
PB2 (SCK / USCK / SCL / ADC1 / T0 / INT0 / PCINT2) |
SCK: ingresso orologio seriale USCK: orologio USI (modalità a tre fili) SCL: orologio USI (modalità a due fili) ADC1: canale di ingresso ADC 1 T0: sorgente orologio timer / contatore0 INT0: ingresso interrupt esterno 0 PCINT2: Interrupt di cambio pin 0, sorgente 2 |
8 |
VCC |
Pin della tensione di alimentazione |
Passaggio 1: configurazione di Arduino Uno come ISP:
Poiché ATtiny85 è solo un microcontrollore, richiede la programmazione di un ISP (In-System Programming). Quindi, per programmare ATtiny85, dobbiamo prima configurare Arduino Uno come ISP in modo che agisca come programmatore per ATtiny85. Per questo, collega Arduino Uno al laptop e apri l'IDE di Arduino. Successivamente, vai su File> Esempio> ArduinoISP e carica il codice ISP Arduino.
Passaggio 2: schema del circuito per la programmazione di ATtiny85:
Di seguito è riportato lo schema completo per la programmazione di ATtiny85 con Arduino Uno:
Il pin positivo del LED è collegato al pin 0 dell'IC ATtiny85 tramite una resistenza da 220 Ω mentre il pin GND è collegato al GND dell'IC. I collegamenti completi sono riportati nella tabella seguente:
Pin ATtiny85 |
Pin di Arduino Uno |
Vcc |
5V |
GND |
GND |
Pin 2 |
13 |
Pin 1 |
12 |
Pin 0 |
11 |
Ripristina |
10 |
Passaggio 3: programmazione di ATtiny85 utilizzando l'IDE di Arduino:
Per programmare l'ATtiny85 con l'IDE di Arduino, prima dobbiamo aggiungere il supporto ATtiny85 all'IDE di Arduino. Per questo, vai su File> Preferenze e aggiungi il link sottostante negli URL di Gestione schede aggiuntive e fai clic su "OK".
Dopodiché, vai su Strumenti> Board> Board Manager e cerca "attiny" e installa l'ultima versione.
Dopo averlo installato, ora potresti vedere una nuova voce nel menu Board intitolata "Attiny25 / 45/85".
Ora vai su File > Esempi> Nozioni di base e apri l'esempio Blink.
Cambia il numero del pin lì da LED_BUILTIN a 0.
Ora torna su Strumenti -> Scheda e seleziona "Attiny25 / 45/85", quindi seleziona ATtiny85 in Strumenti> Processore.
Ora vai avanti e carica il codice. Se il LED collegato al Pin 0 di Attiny85 IC lampeggia, il codice è stato caricato correttamente.
In questo modo è possibile programmare il chip del microcontrollore ATtiny85 utilizzando Arduino IDE e Arduino Uno. Di seguito viene fornito un video funzionante. Se hai domande, lasciale nella sezione commenti. Puoi anche pubblicare le tue domande tecniche sul nostro forum di elettronica per ottenere informazioni migliori.