Newsgroup: it.hobby.elettronica.digitale
Titolo: Display a 7 segmenti con PIC

Ri-salve!
Ho un'altra domanda, e ho deciso di aprire un altro thread :)
Ho la necessità di controllare 4 cifre di un display a 7 segmenti con
un PIC, possibilmente un 16F84A. Come posso fare a controllare tutti i
28 segmenti (più un punto)? Pensavo ad una soluzione con 4 multiplexer
(uno per ogni cifra) ma sono un po scarso di nozioni a riguardo.
Sapete indicarmi qualche sigla di multiplexer? Esiste un procedimento
più semplice di quella che ho proposto?
Vi ringrazio :)
- The Plash -
(No Fancy Signature Available)

 (uno per ogni cifra) ma sono un po scarso di nozioni a riguardo.
Lo schema di principio è questo. Come si attua il multiplex? 
Semplice. I segmenti sono tutti in parallelo mentre gli anodi (nel 
nostro caso stiamo pilotando display ad anodo comune) vengono gestiti
separatamente. Il trucco è abilitare un solo anodo alla volta ed in 
corrispondenza accendere i segmenti che dovranno apparire su quel 
display. A rotazione si effettua la stessa operazione su tutti i 
display. Se l'operazione è svolta con sufficiente velocità l'occhio 
vedrà i display come se fossero sempre accesi... E' lo stesso 
principio con il quale può funzionare il cinema e la televisione. In 
questo modo con sole 11 linee comandi 28 segmenti.
[FIDOCAD]
RV 80 50 95 75
TY 85 55 14 3 0 0 0 * 8
LI 90 75 90 85
MC 70 40 2 1 310
MC 40 40 2 1 310
RV 50 50 65 75
TY 55 55 14 3 0 0 0 * 8
LI 60 75 60 85
RV 110 50 125 75
TY 115 55 14 3 0 0 0 * 8
LI 120 75 120 85
MC 100 40 2 1 310
TY 145 55 14 3 0 0 0 * 8
LI 150 75 150 85
RV 140 50 155 75
MC 130 40 2 1 310
SA 85 30
SA 115 30
SA 145 30
MC 150 30 0 0 010
TY 55 75 5 3 0 0 0 * 7 segmenti in parallelo tra i display
LI 40 40 40 85
LI 70 40 70 25
LI 70 25 35 25
LI 35 25 35 85
LI 30 85 30 20
LI 30 20 100 20
LI 100 20 100 40
LI 130 40 130 15
LI 130 15 25 15
LI 25 15 25 85
LI 45 90 50 90
LI 45 95 50 95
LI 45 100 50 100
LI 45 105 50 105
LI 45 110 50 110
LI 45 115 50 115
LI 45 120 50 120
RV 20 85 45 125
LI 55 30 150 30
TY 25 95 5 3 0 0 0 * 16f84
MC 50 90 0 0 080
MC 50 95 0 0 080
MC 50 100 0 0 080
MC 50 105 0 0 080
MC 50 110 0 0 080
MC 50 115 0 0 080
MC 50 120 0 0 080
LI 60 85 150 85
LI 60 90 65 90
LI 70 90 75 90
LI 80 90 85 90
LI 95 120 95 85
LI 90 90 95 90
LI 60 95 65 95
LI 70 95 75 95
LI 80 95 85 95
LI 90 95 95 95
LI 60 100 65 100
LI 70 100 75 100
LI 80 100 85 100
LI 90 100 95 100
LI 60 105 65 105
LI 70 105 75 105
LI 80 105 85 105
LI 90 105 95 105
LI 60 110 65 110
LI 70 110 75 110
LI 80 110 85 110
LI 90 110 95 110
LI 60 115 65 115
LI 70 115 75 115
LI 80 115 85 115
LI 90 115 95 115
LI 60 120 65 120
LI 70 120 75 120
LI 80 120 85 120
LI 90 120 95 120
-- 
One person's error is another person's data.
News 2000 [v 2.06] / StopDialer / PopDuster - 
http://www.socket2000.com
Akapulce portal: 
http://www.akapulce.net

 ha scritto nel messaggio
news:8tmno01r40tre3gsr...@4ax.com...


[FIDOCAD]
Grazie per il circuito non credo avrei capito come funziona altrimenti
=)
Bye!


 ha scritto nel messaggio 
news:0r6so055br9gee0dj...@4ax.com...


CIAO e buon lavoro
Beh, credevo anchio fosse solo questo, ma da prove personali (gosh) se
collego un display 7 seg. direttamente a massa dura dai 2 ai 5 decimi
di secondo prima di saltare (se sono buoni durano qualcosa di piu)
invece "questo" tipo di display no. L'ho lasciato collegato anche per
più di 20 minuti (mentre smanettavo sul firmware :) con 2 segmenti
gialli e ora brillano ancora tali e quali a prima :)
Inoltre ho riportato la sigla del display perché ne ho altri 2,
siglati TKS-311R 8613 che invece, pur essendo apparentemente identici,
qualora io collegassi allo stesso modo i 2 catodi (uno tramite res
330, l'altro direttamente a massa) succede ciò che uno si
aspetterebbe, e cioè si spengono lentamente e per sempre :)
Siccome appunto ritengo questo un comportamento abbastanza "inusuale"
per un display 7seg. volevo vedere se qualcuno era al corrente di
aggeggi simili e mi poteva spiegare un eventuale utilizzo, se questa
"feature" era implementata appositamente oppure l'ho scoperta per puro
caso ecc. :)
Ciao ciao!!


Paolo Sancono - Genio Incompreso  
http://www.ideegeniali.it/
Carino l'integrato :) Purtroppo però per questioni di spazio non
riesco proprio a farci stare un 40 pin sul circuito, anche perché lo
devo mantenere di dimensioni ridotte per comodità di trasporto :)
Comunque non mancherò di darci un'occhiatina per qualche altro
progetto :)
Ciao e grazie!


 giallo :)
Innanzitutto il catodo o l'anodo non va mai connesso 
all'alimentazione se non sono presenti le resistenze di limitazione 
sui segmenti, pena la bruciatura del led. In secondo luogo se il tuo 
display è effettivamente a due catodi (cioè puoi accendere il display
con il rosso ed il verde) devi fare in modo che i due catodi non 
siano collegati assieme altrimenti quello che fa capo ai diodi rossi 
va in parallelo a quello dei verdi (che si accendono ad una tensione 
più elevata) impedendo ai verdi, appunto, di accendersi. Devi usare 
una resistenza in serie a ciascuno dei due catodi per avere la 
necessaria caduta di tensione.
-- 
You forgot to do your backup 16 days ago.  Tomorrow you will need that version.


necessaria caduta di tensione.
A quanto pare nessuno può credere al fatto che sti led nn si sono
bruciati lol :)
E oltretutto non sono due led distinti, in quanto sia se collego
(tramite 330ohm) un catodo o l'altro, i led son sempre rossi....
L'unica cosa che ho riscontrato è collegandoli ENTRAMBI a massa, come
ho detto uno tramite resistenza l'altro no... non chiedetemi perché o
per come il punto è che funzionano così ;) Però se collego tutti gli 8
segmenti e i due catodi il mio alimentatore da 2,5VA comincia a
faticare lol
Volevo solo sapere per quale motivo dei led rossi potevano diventare
gialli senza bruciarsi (ma dissipando molto) pur collegandoli come ho
già spiegato... 
Sembra incredibile poi boh? Ho congetturato anche un paio di
cosette... Se il secondo catodo si comportasse in realtà da regolatore
di luminosità (ragionando chiaramente per assurdo)? Cioè applicando un
trimmer al secondo catodo ho potuto controllare la luminosità dei led,
ovviamente la luminosità è proporzionale al modulo del rapporto delle
due resistenze (vi ricordo che non c'è differenza alcuna tra un catodo
e l'altro, anche se li scambio la situazione è uguale... sono led
rossi :) e quando arrivo molto vicino agli 0ohm con il trimmer,
saltano di colpo a colore giallo...
Comunque ho deciso che nn utilizzerò il sistema dei led gialli (se non
ce la fa manco il mio trasformatore di casa a tenerli in piedi,
figuriamoci una batteria -.- ) anzi se tutto va bene, e se trovo un
buon LCD a pochi soldi alla prossima fiera dell'elettronica a Verona,
cambio anche tecnologia e mi sposto sui cristalli liquidi :)
Bye grazie delle info!


 già spiegato... 
Questo rimane un mistero. Un led rosso sovralimentato può accendersi 
di un colore molto forte, che può assomigliare al giallo, però non 
dura di solito... Anzi, spesso scoppia.
-- 
Exclusive: We're the only ones who have the documentation.


questo modo con sole 11 linee comandi 28 segmenti.
Ho un'altra domanda sul multiplex... Se io inserisco un condensatore
posso mantenere un display acceso per tutto il tempo che intercorre
tra un passaggio ed un altro? Ho notato che se non do alcun ritardo al
pic i led si accendono pochissimo e c'è qualche influenza tra le linee
di un display e l'altro, mentre se comincio ad alzare il ritardo l'
"effetto ottico" si nota (ed è anche abbastanza fastidioso). Posso
giocare sui ritardi ancora un po, però la domanda mia era più che
altro per conoscenza personale :)
cioè: che condensatore dovrei collegare e dove lo dovrei collegare
(ammesso certo che si possa) per mantenere i led di un display accesi
per tutto il tempo che intercorre tra un invio di segnale e l'altro?
Si consideri che ho display a catodo comune, non anodo comune :)
Bye grazie delle info!


 tra un passaggio ed un altro? 
No. Dovresti provvedere anche a latchare singolarmente le sette linee
dei segmenti per ogni display... Non ti conviene più a quel punto 
fare il multiplex. Piuttosto devi far scorrere una corrente maggiore 
nei segmenti rispetto al normale funzionamento continuo perchè con il
multiplex rimangono accesi 1/3 del tempo...
-- 
Choose variable names that will not be confused.


 più semplice di quella che ho proposto?
Un bel MAX7219 e semplifichi molto il software del PIC. Questo comanda 
fino a 8 cifre, ma la Maxim ne fa altri anche a 4 cifre piu' piccoli, ma 
non ricordo ora le sigle
ciao