PIC 16F877 / 16F874 Development Board v. 1.1 You are the visitor n. Fare click qui per la versione Italiana Best view with 1024x768 |
|
The Development Board v. 1.1 connected to an LCD display. It is well visible (read further, in the description) the led row to check the logic state of till to 8 I/O ports or external circuits' pins. Of course, if you own an 8 trace oscilloscope, you can do without it. :-)) On the right bottom the programming cable. |
Under, the PCB of the Development Board (version 1.0) - On the right, the DB v. 1.1 at work |
On this site you can now find the new
version (v. 1.2)
(Italian version at the moment) of the circuit here
described (version 1.1). If you are interested, just
click on this link At
the moment, sorry, the complete document is available in
Italian version only. F. Iacopetti
After I could have the comfortability of using a PIC 16F84 / C84 Evaluation Board, designed and built by myself according to my need, when approaching a higher level microcontroller I decided to go on in the same way, of course trying to add something useful but respecting the size I had choosen for the PCB. Like the Evaluation Board for the 16F84, this circuit allows the use of the 16F877 in the RC and XT mode, that is with the clock signal generated by a resistor-capacitor net or by a crystal, but above all it allows the interfacing of the PIC with any external circuit in a very useful and in the same time affordable way. On the board it is placed, as well as a little trimmer to experience the on-board A/D converters, a CMOS octal buffer driving 8 small LEDs; two series of connectors allows in this way to show the logic state of I/O pins and of any other terminal of external circuits (of course connected to the same ground reference of the D.B.) without charging sources. The version presented here is the 1.1, finished in June 2002; it is the evolution of the version 1.0, of the previous month, to which it adds some important features. Acknowledgement and disclaimers This project is entirely personal; an acknowledgement
goes to the software allowing me to realize the circuit's
layout. It is the program PCB Elegance v. 2.0; I have it
in the FREE version, limited to 200 pins, by MERCO
Electronics, which has authorized me by e-mail also to
non-personal purposes. Note: Although it's theoretically possible to use other forms of supply, this Development Board has been projected to receive supply from a 9V battery and interfaced only with circuits with low voltage batteries supply. In any case, be always aware of what you are doing! Being this material at free disposal of whoever
desires it, it is absolutely forbidden any form of use
for commercial purposes. |
Circuit's characteristics and description Let's
immediately say that this circuit is not a PIC
programmer, but it can be easily interfaced with one of
the many ones that it is possible to find, allowing not
to remove the microcontroller from the D.B. during
programming. Note per la identificazione degli switch e dei terminali dei connettori Il riferimento ad un particolare interruttore dello
switch Sx avverrà mediante la grafia Sx-n, ove n e x
sono due numeri interi; medesima grafia per i connettori
JPx. Il suffisso "E" indica semplicemente
"extra". Ad esempio, il riferimento allo switch
Sx-1 indica il primo interruttore dello switch Sx a
partire dall'alto nella figura in cui è riportato il
disegno sovrapposto di componenti, ponticelli e piste;
analogo significato nel riferimento ai connettori. Ad
esempio, S6-4 non è connesso ad alcuna pista; quando
aperto, S5-6 è connesso solo a S5-3 e a JP9-3; quando
S5-6 e S3-6 sono chiusi, c'è connessione fra JP-3 il
piedino 36 del PIC. Torniamo adesso alle caratteristiche della Development Board. Supply: il circuito è stato
progettato per essere alimentato mediante batteria a 9V,
ma è possibile utilizzare anche una sorgente continua
non regolata 7-15V (un 7805 fornisce +5V regolati al PIC,
ad un eventuale programmatore e ad un eventuale circuito
esterno), oppure alimentazione da un circuito esterno
mediante JP8 - S6 (si consultino i datasheet Microchip
per il range di valori ammessi). /MCLR pin: è possibile
controllarlo mediante circuito esterno o mediante
programmatore, connetterlo mediante pull-up direttamente
a Vdd, oppure anche tramite capacità a Vss in modo da
implementare un circuito di Power On (peraltro già
presente nel PIC); esiste anche la possibilità di
resettare il PIC mediante pulsante S4. Connection from and to external circuits
of Vdd, Vss, /MCLR: connessione da o verso
un circuito esterno di Vdd, Vss, /MCLR (quest'ultimo
indipendentemente da quale sia la sorgente di
alimentazione); connessione di Vdd e Vss da o verso un
qualunque programmatore. Clock generation: connettore
con la possibilità di ospitare un quarzo (testati: 4MHz,
8 MHz, 20 MHz), modalità RC con resistenza regolabile,
per una oscillazione regolabile su un vastissimo range
(testato solo parzialmente), fino a quualche MHz; Possibility to program the PIC just on the
Development Board: è possibile connettere
la basetta ad un programmatore mediante connettore a 5
fili, con possibilità di fornire alimentazione al
programmatore o di riceverla da esso. Connection from and to external circuits
of I/O pins: tutti i piedini di I/O sono
portati a connettori per interfacciare il PIC con un
circuito esterno. Nel circuito in fotografia mancano
alcuni connettori fissi, mentre sono presenti tutti i SIL
per fili volanti. Spie alimentazione: tre led
inseribili singolarmente mediante jumpers indicano la
presenza di alimentazione in parti diverse del circuito e
ricordano di prestare attenzione ad evitare conflitti
elettrici fra le possibili sorgenti di alimentazione. Some applications |
Selezione della modalità di funzionamento Come anticipato, la selezione fra le diverse modalità di funzionamento avviene mediante dip-switch. Veniamo subito alla descrizione delle loro funzioni. |
Jumpers Quando chiuso, S7 permette al led D1 di indicare la presenza di tensione in uscita al 7805. S8 connette il led D2, il quale, in tal caso, indica la presenza di alimentazione al PIC, sia essa proveniente dal 7805, tramite S1, da JP9 tramite S5 o da JP8 tramite S6. S9 connette invece il led D4, il quale indica la presenza di tensione fra i piedini 1 e 2 del connettore JP8; tale tensione può ovviamente essere quella fornita dal circuito che alimenta il PIC (il 7805, tramite S1, o il programmatore, tramite JP9 e S5), con S6-1 e S6-3 chiusi, oppure provenire dal connettore JP8 (in tal caso essa raggiunge il PIC solo se S6-1 e S6-3 sono chiusi. |
Programmazione Per programmare il PIC senza rimuovelo dalla Evaluation Board, si devono innanzitutto collegare a JP9 opportuni segnali e tensioni provenienti dal programmatore. In dipendenza dal tipo di quest'ultimo, si deve adottare la giusta configurazione degli switch. Se non altrimenti specificato, tutti gli switch devono essere posti su OFF! In ogni caso, siate sempre consapevoli di ciò che fate! Fate molta attenzione al conflitto fra le alimentazioni, e tenete presente che anche collegare fra loro due terminali "comune" (o massa, o terra) di alimentatori diversi può provocare seri danni ai circuiti! Ad esempio, se alimentate il PIC e il programmatore con due diversi alimentatori, collegare fra loro i terminali "comune" (indispensabile) può essere molto pericoloso per la sopravvivenza dei circuiti stessi! Stessa cosa può succedere se state programmando il PIC con un programmatore collegato al computer e lo alimentate con un alimentatore! Attenzione! Quando avete dubbi, meglio utilizzare una batteria, la quale è flottante e si adegua al riferimento eventualmente imposto da un punto di connessione al circuito. Indipendentemente da quale sia il programmatore, consiglio vivamente, soprattutto nel caso il PIC sia collegato ad un circuito esterno mediante JP8, di scollegare i terminali RB6, RB7 e RB3 del PIC dal connettore JP5 ponendo su OFF S3-1, S3-2 e S3-3. Consiglio inoltre di isolare i piedini Osc1 e Osc2 ponendo su OFF tutti gli switch di S2. I piedini RB7 e RB6 del PIC, naturalmente, devono essere collegati tramite S3-4 e S3-5 (ON) ai piedini S5-5 e S5-4 (notare l'inversione), e da questi al programmatore collegato a JP9 ponendo su ON, appunto, gli switch S5-5 e S5-4. Nel seguito verrà sottointeso che se si utilizza il LVP, anche S3-6 va chiuso, così come S5-6 (NOTA: il LVP non è stato testato). Siate inoltre sicuri che, nel caso sia il programmatore a fornire alimentazione al PIC, esso sia in grado di erogare una corrente sufficiente anche all'alimentazione del led D2 (circa 5 mA). 1) Programmatore che fornisce al PIC
alimentazione (Vdd e Vss), /MCLR, RB6 e RB7. 2) Programmatore che riceve alimentazione
(Vdd e Vss) dalla basetta. |
Elenco dei componenti Note: all resistors are
1/4 W, 5%. R1 - 10 kOhm |
Realizzazione del circuito Sono riportate, nelle seguenti immagini, le figure relative al layout del circuito e alla disposizione dei componenti. Si tratta di immagini a 100 e 300 dpi. Per avere le immagini in una nuova finestra, da dove potrete stampare quelle a 300 dpi, potete fare click direttamente su quelle visibili qui sotto o sui link sottostanti, oppure, se utilizzate un sistema Windows (TM) 95/98, utilizzare il tasto destro del mouse e scegliere "Apri collegamento in un' altra finestra". In alternativa potete salvare le immagini sul vostro hard disk o altra memoria di massa con l'opzione contestuale "Salva immagine con nome" e stamparle in un secondo tempo con il browser o altri programmi. Con il browser si potrebbero avere problemi di dimensioni, mentre ad esempio Imaging (TM) di Windows (TM) dovrebbe stampare automaticamente con le dimensioni reali. Se avete dei dubbi sulle dimensioni della stampa ottenuta, perlomeno del layout lato rame, e temete che non sia a grandezza reale, provate a misurare le distanze fra i fori per i componenti DIL, che deve risultare di 2.54 mm fra piedini contigui e di 2.54 mm * 3 = 7.62 mm fra le due file. Ovviamente, per non incorrere in grossolani errori di misura, nel caso della distanza fra pin contigui utilizzate quella fra il primo e il nono piedino di una fila, assicurandovi che sia di 2.54 mm * (9-1) = 20.32 mm. Non riuscirete naturalmente ad apprezzare i centesimi di millimetro, e forse neppure i decimi (non avrebbe neppure senso viste le dimensioni finite delle piazzole e dei loro fori), ma se la vostra misura è appena superiore ai 20 mm dovreste essere a posto. La distanza fra le file dovrebbe invece essere approssimativamente appena superiore ai 7.5 mm. Se una delle due distanze non fosse quella attesa , detta x la relativa misura, dovreste applicare un fattore di zoom orizzontale pari a 7.62/x e un fattore di zoom verticale pari a 20.32/x. Nella seconda figura si nota la disposizione dei componenti con la basetta vista dall'alto e in trasparenza. Da essa si può notare come il layout del lato componenti vada riprodotto sul circuito come se fosse con il lato stampato opposto al rame; per quanto riguarda il layout della parte inferiore (saldature) il lato di stampa è invece quello che andrebbe appoggiato al rame. Lo schema elettrico non è, al momento, stampabile in maniera dettagliata. |
Component placement on the board | Component placement and view of bottom side tracks (copper side, red) and top side tracks (component side, blue) |
Hoping I have been useful to you, just to me to wish you a good work! |
|