Display Universale 

Identificazione progetto

progetto 2

autore

email

note

Display Universale per Micro-GT mini

Marco Visentini

cadillaceldorado1983@yahoo.it

4 Digit a 7 segmenti LED sono collegati al PORTB con anodi/catodi pilotati al PORTC

Premessa

Vi presento un funzionale circuito, semplice ma molto efficace che pur essendo nato per la piattaforma Micro-GT potra' interfacciarsi a qualunque sistema a microcontrollore. Il termine universale deriva dal fatto che puo' alloggiare sia display a catodo comune che ad anodo comune.  E' possibile pilotare separatamente ogni punto decimale ma e' predisposto per un controllo diretto del punto decimale normalmente usato per separare le deu coppie di digit che tipicamento realizzano un orologio.

Schema elettrico con descrizione

 


Download schema elettrico

Figura 1

Nello schema elettrico di figura 1 possiamo distinguere due sezioni complementari, quella sul lato superiore dedicata ai display ad anodo comune gestita dai transistor PNP, andranno bene dei generici BC327, mentre il lato inferiore e' dedicato ai display a catodo comune la cui accensione e' consentita dalla saturazione dei BC337 NPN.

Notiamo la presenza di 3 connettori, partendo dall'alto, uno da 5 pin, uno da 4  e uno da 12.

Le funzionalita' sono intuitive, infatti seguendo le connessioni vediamo facilmente che i pin 1, 2,3,4 vanno ale basi dei transistor PNP, e quindi consentono l'accensione dell'omonimo display, tenendo presente che il digit 1e' quello piu' a destra (il meno significativo dell'eventuale numero decimale).

La quinta linea del medesimo connettore SV3 e' direttamente connesso alla virgola centrale, ovvero al punto lampeggiante normalmente usato negli orologi.

Questo comando e' comunque rindondato nel connettore SV3 nel pin 3.  Questo connettore e' dedicato solo al controllo dei punti decimali.

Il connettore SV1, nei pin compresi tra 1 e 7  accende i segmenti dei display nella sequenza  a,b,c,d,e,f,g.

Circuito stampato descrizione

Si noti che nello schema sono presenti 8 display mentre nel PCB ce ne sono solo 4, questo perche' nella fase di sbroglio del PCB si e' deciso di sovrappore i display a anodo comune a quelli a catodo comune con un notevole risparmio di superfice impegnata. La decisione e' motivata dal fatto che praticamente non esistono casi sensati in cui si usi contemporaneamente l'anodo comune e il catodo comune.

 


Figura 2


La  figura 2 mostra lo sbroglio del layout eseguito con Eagle. Bisogna prestare attenzione alla disposizione dei connettori dato che i primi due hanno il pin 1 a sinistra mentre il terzo risulta invertito. I valori resistivi sono chiaramente indicati nella serigrafia  e comuque sono solo di due valori, 220 ohm per l'accensione dei segmenti e 2k2 per la saturazione dei BJT, ovvero le resistenze in base.

Attenzione: I conettori, come anche il morsetto vanno montati dal lato opposto dei display in modo da non impedire con il loro ingombro il corretto posizionamento del display negli eventuali pannelli frontali.

Figura 3

Sia che usiate i display a catodo comune che a anodo comune dovrete usare due cavetti flat e non tre, di almeno 7 conduttori e 5 conduttori.

Figura 4

E' bene fissare le saldature dei cavetti flat usando un po di colla a caldo. Saranno piu' solidi e maneggevoli.

Questi sono i cavetti usati nei due esercizi che presentiamo in questo articolo (fig.3), ma potrebbero esserci delle varianti dato che il display permette una miriade di connessioni diverse.

 

figura 5

La scheda di sinistra e' la Micro-GT mini, da cui vediamo partire i due cavetti Flat, il primo e' innestato al PORTB e riceve la corrente proveninete dai segmenti del display a anodo comune chiudendo il circuito a massa tramite i pin di questo PORT. Fate attenzione a non superare i 25mA per non danneggiare il PORT stesso. Nella foto successiva si vedono anche le 4 "A" scritte con il penerello sui lati dei display a titolo di promemoria del fatto che quelli istallati sono "anodo comune" quindi il pin corrispondente al segmento acceso dovra' essere tenuto a livello logico basso.



figura 6


La figura 6 mostra chiaramente dove innestare i cavetti flat sia dal lato Micro-Gt che dal lato universal Display.  Si nota anche la presenza del cavo seriale che viene pero' convertito in USB da un comune adattatore USB per consentire la programmazione della Micro-GT tramite notebook. La presenza del bootloader nella memoria del PIC16F876A rende molto agevole la fase di trasferimento dell'hex. 

Firmware

La fase di debug del programma e' stata realizzata con Proteus, il potente strumento messo a disposizione dalla stessa Microchip. Nel viso del mio amico potete ancora vedere i segni della festa del carnevale.

figura 7

 

Un'atra bella bella foto  mentre armeggiamo con proteus e contemporamente trasferiamo il file .hex nella memoria del PIC. Dalla foto si nota che il sistema e' molto compatto e pulito nei cablaggi. Ottimale per l'uso didattico nelle scuole. Se i cavetti sono ben fissati con la colla a caldo risultano anche molto robusti.

figura 8

 

Potete scaricare il file zippato dell'intero progetto in Mplab al segunte indirizzo-> download sequenza numerica

/**********************************************
*          CONTEGGIO SUL DISPLAY DA 9 A 0              *
*                              PIC 16F876A                                     *
*                                22/02/2012                                       *
*                                                                                          *
* PROGRAMMA ESEGUITO DA MARCO VISENTINI *
**********************************************/

#include <pic.h>
#include "always.h"
#include "delay.h"
void main(){
TRISB=0;
TRISC=0;
while(1){
PORTB=0b11111111;
PORTB=0b01000000;
PORTC=0b11111110;
DelayS(1);
PORTB=0b01111001;
PORTC=0b11111101;
DelayS(1);
PORTB=0b00100100;
PORTC=0b11111011;
DelayS(1);
PORTB=0b00110000;
PORTC=0b11110111;
DelayS(1);
PORTB=0b00011001;
PORTC=0b11111110;
DelayS(1);
PORTB=0b00010010;
PORTC=0b11111101;
DelayS(1);
PORTB=0b00000010;
PORTC=0b11111011;
DelayS(1);
PORTB=0b01111000;
PORTC=0b11110111;
DelayS(1);
PORTB=0b00000000;
PORTC=0b11111110;
DelayS(1);
PORTB=0b00010000;
PORTC=0b11111101;
DelayS(1);
}

}
 

Scarica il programma di test che fa lampeggiare ad 1 Hz la virgola centrale -> download virgola lampeggiante

Il precedente codice, scritto in C con l'ambiente Mplab della microchip.


Potete vedere un filmato della micro-gt mini  collegata al display universale in funzione al seguente

 


 

Questo progetto è ridistribuibile secondo i termini di licenzaCreative Commons Attribuzione-Condividi allo stesso modo 3.0 Italia

 

Note aggiuntive

Visita i siti web che ho sviluppato io, e dammi un tuo giudizio, agli indirizzi:

http://www.bb-yewilliam.it/    (il bed end brekfast di Jenny per chi fosse di passaggio a Padova)

http://www.amministrazionibugno.it/   (l'agenzia di amministrazione condominiale dell'amico Massimiliano)

Alcuni esemplari di display universale ci sono rimasti a magazziono chi fosse interesato li puo' richiedere, anche solo PCB ad ad.noctis@gmail.com vi rispondera' l'ing Gottardo che li ha disegnati.

  Pagina precedente