Web site di Fabrizio Iacopetti
Risoluzione consigliata: 1024 x 768HomeMail-me



Atmega 16/32 module v. 1.2
Siete il visitatore n.

Contenuti dell'articolo

In questo articolo è brevemente illustrata una scheda di sviluppo minimale per microcontrollori Atmel AVR ATmega16(L) e ATmega32(L) in package TQFP44. La scheda ospita un quarzo, un pulsante di RESET, un connettore ISP per la programmazione del microcontrollore e altri componenti passivi. Tutti i segnali sui pin del microcontrollore sono accessibili su opportuni connettori disposti sui lati della scheda. Per la programmazione del microcontrollore è necessario un programmatore esterno, ad esempio il sistema di sviluppo Atmel STK500.

Caratteristiche della scheda

Questa scheda minimale di sviluppo è nata principalmente dall'esigenza di sviluppare applicazioni con microcontrollori della serie Atmel AVR ATmega16(L) e ATmega32(L) con package TQFP44, avendo a disposizione solamente la tradizionale scheda di sviluppo Atmel STK500, la quale non può ospitare i microcontrollori con package TQFP44.
La scheda presentata in questa pagina non ospita periferiche o altri dispositivi on-board, quali EEPROM, etc., per cui non si tratta di una scheda di valutazione; la sua semplicità la rende adatta piuttosto per l'interfacciamento del microcontrollore utilizzato con i circuiti applicativi più diversi. Avendo a disposizione la scheda STK 500, inoltre, è possibile sfruttarne agevolmente alcune risorse, quali il circuito per la generazione di alimentazione regolata, il convertitore fra livelli logici del microcontrollore e livelli RS-232, etc..
In figura 1 è visibile la scheda interfacciata con circuiti esterni attraverso cavi con terminazione tipo Amphenol e con la scheda STK500 attraverso flat cable per la programmazione ISP. Sulla scheda visibile in figura 1 sono stati montati dei connettori singola fila, passo, 2.54 mm, ad angolo retto. Utilizzando connnettori singola fila, diritti, la scheda potrebbe essere inserita su altri PCB o schede prototipi sui quali siano stati montati connettori femmina disposti ad hoc.


Figura 1 - La scheda ATmega16/32 module v. 1.2 connessa alla STK500 attraverso cavo ISP e ad altri dispositivi

^ Torna a inizio pagina

Riconoscimenti e avvertenze

La ideazione e realizzazione della scheda sono interamente personali, sebbene certamente in rete sia possibile trovare sistemi simili e/o più completi.

Se in qualche modo si intende utilizzare il contenuto di questa pagina per scopi non puramente personali o non formativi, o in qualche modo divulgare il materiale in essa contenuto, è fatto obbligo di richiedere un permesso scritto all'autore di questo articolo (anche via e-mail). L'utilizzo di questa scheda per uso personale in ambito hobbistico o formativo è assolutamente libero e auspicato.

Le informazioni contenute in questa pagina sono fornite "così come sono", senza alcuna forma di garanzia. L'autore di questo articolo non si assume naturalmente alcuna responsabilità per danni diretti o indiretti a persone o a cose derivanti dalle informazioni in esso contenute. 

Note sull'utilizzo della scheda

Come visibile dallo schema elettrico di figura 2, il circuito è piuttosto semplice.
La sorgente di clock utilizzata è un quarzo: può essere conveniente saldare sulla scheda un connettore portaquarzi o un semplice connettore a due poli, passo, 5.08 mm, in modo da poter utilizzare quarzi diversi.
Prima di fornire tensione alla scheda si raccomanda di analizzare il datasheet del particolare microcontrollore montato e lo schema elettrico della scheda stessa, in particolare con riferimento al range di alimentazione utilizzabile e alla eventuale necessità di collegare fra loro attraverso cavi, utilizzando i connettori ai lati della scheda, i pin di alimentazione GND e/o VCC della scheda stessa.
La scheda è stata realizzata e testata con i microcontrollori ATMEGA32L e ATMEGA16; con entrambi i microcontrollori, sono stati utilizzati e testati quarzi da 8 MHz e 16 MHz.
Prima di collegare la scheda al programmatore si raccomanda di analizzare lo schema elettrico della scheda stessa e il datasheet del programmatore utilizzato, in particolare per quanto riguarda l'alimentazione e il RESET.
Per quanto riguarda l'alimentazione, è possibile alimentare la scheda ATmega16/32 module attraverso il connettore ISP se il programmatore supporta tale funzionalità, naturalmente rispettando il limite di corrente erogabile dal programmatore stesso; in alternativa, è possibile alimentare la scheda con una sorgente esterna di alimentazione, ma in quest'ultimo caso è fondamentale prestare attenzione ad evitare conflitti elettrici con i terminali ISP del programmatore se il cavo ISP è connesso.
Per quanto riguarda il segnale di RESET, per evitare danni alla circuiteria del programmatore nel caso il pulsante di RESET sulla scheda sia premuto mentre il segnale di RESET è pilotato dal programmatore, è stato previsto un resistore di protezione in serie ai contatti del pulsante di RESET su scheda; il valore di tale resistore è stato dimensionato con riferimento alla scheda STK500, per cui potrebbe risultare inadatto per altri programmatori.


Figura 2 - Schema elettrico del modulo

^ Torna a inizio pagina

Realizzazione della scheda

La scheda è a doppia faccia, realizzabile su tradizionale supporto FR4. In figura 3 e figura 4 sono riportati rispettivamente il layout lato top e il layout lato bottom.
Le immagini in alta risoluzione sono scaricabili attraverso i link delle relative didascalie. Attenzione: le immagini presenti in questa pagine potrebbero NON essere in alta risoluzione. Le immagini scaricabili attraverso i link delle didascalie hanno una risoluzione di 600 dpi; per verificare che la stampa ottenuta sia a dimensioni reali, come indicazione si può verificare che la distanza fra il centro dei fori dei pin estremi dei connettori da 11 pin sia di 25.4 mm. E' consigliabile eseguire la verifica sia per i connettori orizzontali che per quelli verticali.
La larghezza minima delle piste delle scheda è di 0.4 mm. Disponendo di un master di buona qualità, ad esempio stampato in tipografia, è possibile realizzare in proprio la scheda col classico procedimento della fotoincisione. E' possibile, ma non è stato personalmente verificato, che si possano ottenere buoni risultati anche con master creati con stampante LASER, eventualmente sovrapposti.
Con una realizzazione in proprio, non essendo possibile metallizzare i fori, per le eventuali vie è necessario utilizzare spezzoni di reoforo o simili, e saldare su entrambi i lati i terminali dei componenti utilizzati per connettere le due facce, ad esempio i reofori di alcuni dei condensatori previsti sulla scheda.
In particolare, potrebbe risultare non agevole saldare i connettori; in tal caso, con connettori i cui terminali sono uniti da uno scudo plastico, si può risolvere il problema spostando leggermente lo scudo plastico stesso.
La saldatura del microcontrollore è delicata, tuttavia, nel caso sia stata acquisita una qualche esperienza con saldatura SMT, essa non presenta particolari problemi. E' invece sconsigliabile saldare il microcontrollore in assenza di una minima esperienza con componenti SMD.
Prima di fornire tensione al circuito si raccomanda di ripulire la scheda da eventuali residui di flussante e di controllare la continuità elettrica delle piste.


Figura 2 - Layout lato topFigura 3 - Layout lato bottom


Figura 4 - Silkscreen lato top

^ Torna a inizio pagina

Lista componenti

A seguire, la lista dei componenti necessari. I componenti non sono critici.
La tensione di lavoro dei condensatori deve essere di almeno 50 V.
La potenza dissipabile dai resistori deve essere di almeno 125 mW.
      Rif.   Tipo/Valore    Package   
1    C1    KER 22 pF    8X3R5,08   
2    C2    KER 22 pF    8X3R5,08   
3    C3    100 nF    8X3R5,08   
4    C4    100 nF    8X3R5,08   
5    C5    100 nF    8X3R5,08   
6    C6    100 nF    8X3R5,08   
7    C7    10 nF    8X3R5,08   
8    CMP1  Scheda doppia faccia, 58 mm x 42 mm   
9    IC1    ATMEGA32L-8AI    TQFP44    ( Nota 1 )
10    K1    K1X11    1X11    -  connettore SIL passo 2.54 mm
11    K2    K1X11    1X11    -  connettore SIL passo 2.54 mm
12    K3    K1X11    1X11    -  connettore SIL passo 2.54 mm
13    K4    K1X11    1X11    -  connettore SIL passo 2.54 mm
14    K5    K2X3    2X03    -  connettore DIL passo 2.54 mm (per programmazione ISP)
15    L1    L-air 10 uH    R5      ( Nota 2 )
16    Q1    QUARZ_8,0000MHZ    HC49/U    ( Nota 3 )
17    R1    4.7 KOhm   R5   
18    R2    470 Ohm   R1   
19    S1    SMD pushbutton N/O   TACT_DTS-644   

Nota 1: IC utilizzabili: ATMEGA16, ATMEGA16L, ATMEGA32, ATMEGA32L, package TQFP44
Nota 2: L'induttanza L1, nel caso non sia necessario utilizzare l'ADC interno al microcontrollore, non è strettamente necessaria, e può essere sostituita da un ponticello, in modo che al pin AVCC giunga direttamente l'alimentazione VCC.
Nota 3:  Quarzi testati: 8 MHz, 16 MHz con ATMEGA16 e ATMEGA32L

^ Torna a inizio pagina

Conclusioni

Personalmente ho utilizzato la scheda presentata in varie applicazioni, soprattutto in fase di sviluppo pre-prototipo di alcuni sistemi. Ad esempio, ho utilizzato la scheda per conversione ADC, per controllo di alcuni segnali di I/O attraverso comandi da seriale (utilizzando il convertitore di livelli su STK500), per comunicazione I2C con un altro dispositivo, etc..
Per utilizzare la scheda in applicazioni con caratteristiche particolari, dovrebbero essere fatte valutazioni preliminari o sperimentali. Solo a titolo di esempio, per quanto riguarda la conversione AD, utilizzando dei cavi di una certa lunghezza per la connessione ad altri circuiti dovrebbe essere posta attenzione alla componente indotta dai disturbi di rete a 50 Hz.
Per ogni domanda potete scrivermi.
Buon lavoro.

Se volete, potete inviarmi la vostra opinione (anche in forma anonima).
   
Il vostro Paese

Trovo questo circuito

Utile

Poco utile

Inutile

Sarebbe comodo trovare il PCB già pronto

No

Eventuali commenti

Se desiderate una risposta, inserite qui il vostro indirizzo

   
 


Se volete contattarmi per chiarimenti o suggerimenti potete farlo al seguente indirizzo:
f_iacopetti@libero.it