Luminosità lcd 7 segmenti

Buongiorno a tutti,

ho iniziato da qualche mese l'affascinante viaggio nel mondo Arduino. Ho cercato di risolvere i piccoli problemi iniziali leggendo messaggi nei forum e in pubblicazioni varie.
Sto provando a lavorare con i multiplex per ridurre l'utilizzo dei pins con Arduino uno.
Uso 8 Lcd 7 segmenti collegati con 2 74hc595.
Il problema che riscontro è nella luminosità dei segmenti. La cifra 1 è molto più luminosa dell' 8 tutte le altre cifre sono una via di mezzo.
Come posso avere una luminosità uniforme ?
Se avete bisogno di più dettagli fatemi sapere.
Grazie per il prezioso aiuto.

Saluti
Roberto

Buongiorno,
essendo il tuo primo post nella sezione Italiana del forum, nel rispetto del nostro regolamento, ti chiedo cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :slight_smile:

Ti ringrazio. Ho fatto la mia presentazione e spero di essere stato sufficientemente chiaro nella spiegazione del mio problema.
Roberto

Gli integrati 74HC595 hanno un limite nella corrente per uscita (mi pare 35mA) ed in quella totale. Se hai LED abbastanza luminosi (quindi assorbono abbastanza) e soprattutto se accendi parecchi segmenti metti in difficoltà l'integrato. Temo che tu debba fornire più corrente, quindi o usi un driver apposito come STP16CP05 al posto del 74HC595 (ma non avendo mai costruito display LED grandi li ho mai usati, per cui verifica prima bene le caratteristiche), oppure devi evitare di far lavorare il 74HC595 come driver e metterci dei transistor ad esempio.

Vediamo comunque se qualcuno ha già fatto cose come questa.

@docdoc

Grazie per la risposta. Ho riguardato i datasheets LCD e del HC795.
Come hai detto giustamente la corrente per uscita del 74hc595 è 35mA e secondo il datasheet dell' LCD la corrente richiesta dovrebbe essere 30mA.
Forse sbaglio qualcosa ma per me dovrebbe essere sufficiente.

Saluti
Roberto

Posta il codice che usi

Ciao,
P.

Ecco il codice.

R.

#include <ShiftDisplay.h>

ShiftDisplay display(COMMON_ANODE, 4);

void setup() {
  for (int i = 15; i > 0; i--) {
    // memorizza numero e mostra per 400ms
    display.set(i, ALIGN_RIGHT);
    display.show(400);
    // aggiunge punto e mostra per 400ms
    display.changeDot(0);// Punto lampeggiante 0=primo lcd 1= secondo lcd ecc. ecc.
    display.show(400);
  }
  display.set("----"); // memorizza caratteri
}

void loop() {
  display.update(); // visualizza caratteri fine conteggio
}

Il codice è derivato da un esempio della libreria. Puoi provare con quello originale, ma il tuo non sembra essere difettoso.

Se hai eseguito le connessioni come da schema bisogna cominciare una campagna di ricerca guasti. Puoi cominciare dal verificare i HC795, poi i display, e vedere se scopri qualcosa.

Ciao,
P.

Quando usi il multiplexing, ovviamente la luminosita' "apparente" e' sempre minore di quando piloti i segmenti direttamente, perche' restano accesi per meno tempo (se ad esempio ultiplexi 4 cifre, ogni cifra rimarra' accesa per "circa" (leggermente di meno, causa commutazioni) di un quarto del tempo, per cui l'occhio la vedra' gia meno luminosa ... se poi il sistema e' un po al limite come corrente che puo fornire, piu segmenti saranno accesi, piu la corrente disponibile verra' divisa fra essi, riducendo ulteriormente la luminosita' al crescere dei segmenti accesi insieme ...

Si puo risolvere creando dei driver a corrente costante per ogni "riga" (o colonna, dipende dal cablaggio) di segmenti identici, o piu semplicemente usando un driver che gia includa i regolatori di corrente al suo interno ... ce ne sono diversi modelli, ad esempio TB62709f, oppure TLC5916-TLC5917, oppure il driver DM9374, o altri ancora ...

Ringrazio tutti.
Proverò ad usare gli TLC5916 (unico disponibile) e vedrò come si comportano.

Saluti
R.

Robotecnica:
Buongiorno a tutti,

Come posso avere una luminosità uniforme ?
Se avete bisogno di più dettagli fatemi sapere.
Grazie per il prezioso aiuto.

Saluti
Roberto

non perdere anche tu mesi dietro il multiplexing usa sempre il suo driver max 7219
impara ad usarlo avrai solo vantaggi

  1. le risorse del micro rimangono a tua disposizione, al multiplexing ci pensa il driver
  2. cambi la luminosità a piacere

Ti ringrazio, conosco i max7219, il problema che gestiscono solo display catodo comune e
io ne ho diversi con anodo comune.
A meno che ci sia qualche inghippo per farlo funzionare con gli anodo comune.

Saluti
Roberto