Go Down

Topic: Info su display a 8 segmenti (Read 5751 times) previous topic - next topic

toti94

Ragazzi mi sono stati regalati tre display a 7 segmenti più il punto (quindi dovrei dire 8 segmenti?)
Cmq sono di questo tipo :
http://i.ebayimg.com/t/DISPLAY-CATODO-COMUNE-7-SEGMENTI-ROSSO-MISURE-13X17X7-/00/%24(KGrHqEOKjkE1rVLqDqtBNnzuvbq2!~~_35.JPG
affianco c'è scritto:  28 TFK 501   TDSO 3150-L
Mi potete dire come si usano? >_< non ne ho la più pallida idea di come collegarli e come gestire i segmenti

Michele Menniti

#1
Aug 31, 2012, 07:47 am Last Edit: Sep 25, 2012, 12:48 pm by Michele Menniti Reason: 1
Il display si definisce a "sette segmenti più punto decimale", comunque alla fine sono 8 LED e come tali si pilotano. I LED dei display hanno sempre un polo in comune, o il catodo o l'anodo, da qui la definizione "a catodo comune" o "ad anodo comune".
La pinatura di un display presenta una lettera per ogni segmento, in genere quello superiore è "a" e si scorre in senso orario, il punto decimale di chiama "dp", poi ci sono uno o più pin (tutti i corto tra loro) a cui sono collegati tutti gli anodi (o catodi) degli 8 LED.
Nel caso di un ca (anodo comune) all'anodo devi applicare una tensione positiva (p.es. 5V), ad ogni segmento devi mettere idonea R (p.es. nel caso di 5V ed un display a LED rossi va benissimo una 330ohm), l'altro capo della R va collegato a GND per vedere accendere il relativo segmento.
Ovviamente di norma un display è pilotato da un integrato e quindi ogni R di segmento sarà collegata ad un pin di tale integrato: se il pin è su H non c'è idonea differenza di potenziale ed il segmento non si accende, se il pin è su L invece è come se fosse a GND ed il segmento si accende; per i display a cc
(catodo comune) vale il discorso opposto: catodo a GND e segmenti, sempre tramite R, su H.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

leo72

Se devi pilotare un solo display puoi usare uno shift register, come un 74595.
Puoi prendere spunto da qui:
http://arduino.cc/en/Tutorial/ShiftOut

Se devi pilotare più display, puoi usare un MAX7219, che può pilotare fino a 64 led oppure 8 display a 7 segmenti+punto.
http://arduino.cc/playground/Main/MAX72XXHardware

toti94

In parole povere per usare il display ho bisogno dell'integrato? quale? e dove posso acquistarlo? Grazie :)

gingardu

per ogni display  che hai ci vuole un transistorino pnp  messo sul catodo comune
Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

pitusso

Ciao,
visto che ci sto giocando proprio ora anche io, ti giro i link più interessanti che ho trovato e che sto utilizzando:

- http://garagelab.com/profiles/blogs/project-4-seven-segments-display-with-arduino-show-the-ascii-code
con questo riesci ad utilizzare subito il tuo display 4 cifre 7 segmenti, senza nessun componente aggiuntivo.
Note: attenzione allo schema proposto (quello disegnato su fritzing), non è corretto/completo.
Per la mapppatura segui lùi commenti sulla dichiarazione dei pin dello sketch allegato. Inoltre mancano le relative resistenze.
Questa è la mappatura (e di base il codice) che attualmente sto usando io.

- http://www.instructables.com/id/4-Digit-7-Segment-LED-Display-Arduino/

- http://arduino.cc/forum/index.php/topic,20201.0.html

- http://arduino.cc/forum/index.php/topic,13590.30.html
con uso di shift out (74HC595)

- http://trandi.wordpress.com/2009/12/01/segments-display-arduino-74hc595-shift-register/
come sopra

uwefed


per ogni display  che hai ci vuole un transistorino pnp  messo sul catodo comune

I catodi vanno collegati a massa percui Ti servono NPN non PNP.
Ciao Uwe

leo72

Se prendi il mio progetto Micrologio dentro trovi il pilotaggio di un display a 7 segmenti direttamente con un Atmega328 senza driver specifici né transistor: solo R di limitazione della corrente sugli anodi dei led. Ho ovviamente usato il multiplexing (3 schemi diversi) per pilotare i segmenti. Puoi trarre diverse info utili.

toti94

Io vorrei usare un solo display, quindi credo che non sia essenziale il transistor vero? il codice non è un problema, so farlo, il vero problema per me sono i collegamenti, non so su quali pin mettere la massa e su quali no, e non so se sono necessarie le resistenze.
Grazie

leo72

Il fatto che sia un transistor non ti esime dalle resistenze.
Questo perché i segmenti del display sono led a tutti gli effetti, quindi devi pilotarli in corrente, e per limitarla devi usare le resistenze. Sia che tu usi un transistor sia che non lo usi.

Ricordati poi che se non lo usi e pensi di pilotare il display direttamente con i pin dell'Arduino devi fare i conti anche con la massima corrente erogata simultaneamente. Ossia non pensare di accendere i 7 segmenti di una cifra tutti insieme senza rischiare di danneggiare qualcosa: ammettendo di pilotare i led con la massima corrente, sono 20 mA per led, che fanno 140 mA per ogni singola cifra. Ricordati che sul datasheet è riportata la massima corrente erogabile da ogni gruppo di pin del micro, e questa corrente solitamente non supera i 100 mA. Devi usare il multiplexing. Quindi, secondo me, meglio se metti un transistorino.

Freddy65

Ciao, tempo fa avevo in cantiere un monitor per batterie che utilizzava tre display a catodo comune http://arduino.cc/forum/index.php/topic,95817.msg719820.html#msg719820 prendendo come esempio questo articolo per PIC http://www.eeng.biz/multiplex.htm, il tutto funziona abbastanza bene , poi per problemi personali vari non c'ho più messo mano , però fà ancora bella mostra sulla mia scrivania.

Ciao.
Arduino 2009

toti94

Quindi in conclusione mi conviene comprare un transistor XD potete consigliarmi voi quale?

leo72

Un comunissimo NPN tipo il 2N2222 oppure il BC337, entrambi reggono diverse centinaia di mA per cui sono adattissimi al tuo scopo.

toti94

mmm guardando nei vari componenti che ho mi sono ricordato di averne 3, mi sono usciti dal kit di arduino ma sono diversi, in grande c'è scritto FBB50 e sotto in piccolo BS170, non vanno bene?

toti94


Go Up