[RISOLTO] Max7219 mostra "8888"

Salve a tutti,

Oggi ho collegato "il driver MAX7219" a 4 display da 7 segmenti, successivamente ho collegato i segnali seriali ad Arduino.

Il risultato di partenza non è stato dei migliori, dal momento che già alimentando il circuito, senza sketch caricato, i 4 display indicano "8 8 8 8 ", (quattro otto).Faccio presente di aver collegato solo un condensatore elettrolitico da 100 micro al 7219, perchè l'altro da 10 non polarizzato, lo andrò ad acquistare in settimana.Volevo sapere che cosa indica una visualizzazione di questo tipo.Si potrebbe essere guastato il driver?

Ricapitolando : Ho collegato su "Iset" una resistenza da 10 k, display collegati in parallelo come da datasheet, solo un condensatore elettrolitico da 100 micro, mentre l'altro non è stato collegato.

Ciao

Stai usando dei Display con anodo comune al posto dei catodo comune che sono necessari per il MAX7219?
Ciao Uwe

uwefed:
Stai usando dei Display con anodo comune al posto dei catodo comune che sono necessari per il MAX7219?
Ciao Uwe

Salve Uwe,

No purtroppo, sto utilizzando quelli giusti (KW1561CSA)

matrix77:
Salve a tutti,

Oggi ho collegato "il driver MAX7219" a 4 display da 7 segmenti, successivamente ho collegato i segnali seriali ad Arduino.

Il risultato di partenza non è stato dei migliori, dal momento che già alimentando il circuito, senza sketch caricato, i 4 display indicano "8 8 8 8 ", (quattro otto).Faccio presente di aver collegato solo un condensatore elettrolitico da 100 micro al 7219, perchè l'altro da 10 non polarizzato, lo andrò ad acquistare in settimana.Volevo sapere che cosa indica una visualizzazione di questo tipo.Si potrebbe essere guastato il driver?

Ricapitolando : Ho collegato su "Iset" una resistenza da 10 k, display collegati in parallelo come da datasheet, reset non collegato, solo un condensatore elettrolitico da 100 micro, mentre l'altro non è stato collegato.


Ciao

ma scusa non comprendo dove è il probl, se non invii il numero da visualizzare che ti aspetti? tutto spento?

Allora hai invertito sul MAX7219 i dig con i seg.
Ciao Uwe

gingardu:

matrix77:
Salve a tutti,

Oggi ho collegato "il driver MAX7219" a 4 display da 7 segmenti, successivamente ho collegato i segnali seriali ad Arduino.

Il risultato di partenza non è stato dei migliori, dal momento che già alimentando il circuito, senza sketch caricato, i 4 display indicano "8 8 8 8 ", (quattro otto).Faccio presente di aver collegato solo un condensatore elettrolitico da 100 micro al 7219, perchè l'altro da 10 non polarizzato, lo andrò ad acquistare in settimana.Volevo sapere che cosa indica una visualizzazione di questo tipo.Si potrebbe essere guastato il driver?

Ricapitolando : Ho collegato su "Iset" una resistenza da 10 k, display collegati in parallelo come da datasheet, reset non collegato, solo un condensatore elettrolitico da 100 micro, mentre l'altro non è stato collegato.

Ciao

ma scusa non comprendo dove è il probl, se non invii il numero da visualizzare che ti aspetti? tutto spento?

Salve e grazie per il tuo intervento,
Scusa, ma non ho molta dimestichezza con questo driver e pensavo rimanesse spento senza comunicazione, quindi in pratica multiplexa in base ad un suo valore di default?

Prova a scollegare i pin della SPI (MOSI e Clock) e scollega anche il CS, poi smanetta quest'ultimo tra il +5 e GND e poi dicci cosa succede.

matrix77:
Salve e grazie per il tuo intervento,
Scusa, ma non ho molta dimestichezza con questo driver e pensavo rimanesse spento senza comunicazione, quindi in pratica multiplexa in base ad un suo valore di default?

Il MAX7219 per tener spento i Display li tiene polarizzati in modo inverso.

dal datasheet:
Shutdown Mode
When the MAX7219 is in shutdown mode, the scan oscillator is halted, all segment current sources are pulled to ground, and all digit drivers are pulled to V+, thereby blanking the display. ... Data in the digit and control registers remains unaltered. Shutdown can be used to save power or as an alarm to flash the display by successively entering and leaving shutdown mode. ..

Initial Power-Up
On initial power-up, all control registers are reset, the display is blanked, and the MAX7219/MAX7221 enter shutdown mode. Program the display driver prior to display use. Otherwise, it will initially be set to scan one digit, it will not decode data in the data registers, and the intensity register will be set to its minimum value.

Si entra/ esce dal shutdown mode resettando / settando il bit D0 del Shutdown Register (0xXC)

Ciao Uwe

uwefed:

matrix77:
Salve e grazie per il tuo intervento,
Scusa, ma non ho molta dimestichezza con questo driver e pensavo rimanesse spento senza comunicazione, quindi in pratica multiplexa in base ad un suo valore di default?

Il MAX7219 per tener spento i Display li tiene polarizzati in modo inverso.

dal datasheet:
Shutdown Mode
When the MAX7219 is in shutdown mode, the scan oscillator is halted, all segment current sources are pulled to ground, and all digit drivers are pulled to V+, thereby blanking the display. ... Data in the digit and control registers remains unaltered. Shutdown can be used to save power or as an alarm to flash the display by successively entering and leaving shutdown mode. ..

Initial Power-Up
On initial power-up, all control registers are reset, the display is blanked, and the MAX7219/MAX7221 enter shutdown mode. Program the display driver prior to display use. Otherwise, it will initially be set to scan one digit, it will not decode data in the data registers, and the intensity register will be set to its minimum value.

Si entra/ esce dal shutdown mode resettando / settando il bit D0 del Shutdown Register (0xXC)

Ciao Uwe

Grazie per le info che mi hanno portato a ricontrollare tutti i collegamenti su pcb; effettivamente non riceveva i segnali il driver, ed infatti avevo sbagliato a collegare il clock sotto all' ic, colpa della stanchezza e dei tanti collegamenti....grazie al Vostro intervento, ho scartato l'idea che l'ic fosse guasto e nel frattempo ho caricato uno sketch d'esempio e funziona, adesso devo solo collegare i due led rossi centrali e domani inizierò a prendere un po' di pratica con la libreria.

Come ultima cosa volevo sapere se fosse possibile utilizzare un ide più aggiornato della versione "023", perchè purtroppo le ultime versioni non accettano la libreria "ledcontrol.h".

L'IDE successivo alla 023 è la 1.5.x.

Ti suggerisco di conservarle entrambe, perchè tra una e l'altra c'è un bel salto di parametri.

Io uso principalmente la vecchia 0023, e solo quando ho progetti che richiedono librerie e funzioni della nuova, uso la 1.5.

Dalla versione IDE1.0.0 é stato cambiato il WProgram.h con Arduino.h. Devi modificare la libreria.

http://arduino.cc/en/Main/ReleaseNotes:
The WProgram.h file, which provides declarations for the Arduino API,
has been renamed to Arduino.h. To create a library that will work in
both Arduino 0022 and Arduino 1.0, you can use an #ifdef that checks
for the ARDUINO constant, which was 22 and is now 100. For example:

#if defined(ARDUINO) && ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif

L'IDE successivo alla 023 è la 1.5.x.

Questo é sbaglaiato.

La versione 1.5.x é per la Arduino DUE.
Per tutti gli altri Arduini:
La versone dopo la IDE0023 é la IDE1.0.0. La versione attuale é la IDE1.0.5

Ciao Uwe

uwefed:
Dalla versione IDE1.0.0 é stato cambiato il WProgram.h con Arduino.h. Devi modificare la libreria.

http://arduino.cc/en/Main/ReleaseNotes:
The WProgram.h file, which provides declarations for the Arduino API,
has been renamed to Arduino.h. To create a library that will work in
both Arduino 0022 and Arduino 1.0, you can use an #ifdef that checks
for the ARDUINO constant, which was 22 and is now 100. For example:

#if defined(ARDUINO) && ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif

L'IDE successivo alla 023 è la 1.5.x.

Questo é sbaglaiato.

La versione 1.5.x é per la Arduino DUE.
Per tutti gli altri Arduini:
La versone dopo la IDE0023 é la IDE1.0.0. La versione attuale é la IDE1.0.5

Ciao Uwe

Ancora un grazie!!, poi eseguirò la modifica che mi hai consigliato.

Ciao

BaBBuino:
L'IDE successivo alla 023 è la 1.5.x.

E la serie 1.0.x dove la metti? :wink:

Leo c'è qualcosa che non mi torna. Io sto usando la 1.5, e non ho Arduino DUE. Però funziona. Cosa sto sbagliando?

L'IDE 1.5.x é l' unica che gestische Arduino DUE ede in stato beta. Gestisce anche gli altri modelli Arduino.
È preferibile usare con gli Arduino non DUE l'IDE1.0.x perché é piú stabile e la piú aggiornata.

Sulla pagina per scaricare la IDE http://arduino.cc/en/Main/Software:

Download Arduino 1.5 BETA (with support for Arduino Due Board)

If you have the new Due Board you must download the 1.5.2 version. Once you get the software follow this instruction to get started with the Arduino Due.

WARNING: This software is a beta version, you may encounter bugs or unexpected behaviours. Please discuss any issues in the Due forum

Ciao Uwe

BaBBuino:
Leo c'è qualcosa che non mi torna. Io sto usando la 1.5, e non ho Arduino DUE. Però funziona. Cosa sto sbagliando?

Nulla. Ma hai affermato che l'erede della 0023 è la serie 1.5.x e ciò non è vero, perché l'erede della serie 002x è proprio la seria 1.0.x. :wink: Serie che è stata rilasciata in concomitanza con la presentazione della UNO R3.

La 1.5.x è stata scritta per la DUE e, anche se in futuro sarà l'unica versione che sarà sviluppata, al momento è ancora in beta.

uwefed:
L'IDE 1.5.x é l' unica che gestische Arduino DUE ede in stato beta. Gestisce anche gli altri modelli Arduino.
È preferibile usare con gli Arduino non DUE l'IDE1.0.x perché é piú stabile e la piú aggiornata.

Sulla pagina per scaricare la IDE http://arduino.cc/en/Main/Software:

Download Arduino 1.5 BETA (with support for Arduino Due Board)

If you have the new Due Board you must download the 1.5.2 version. Once you get the software follow this instruction to get started with the Arduino Due.

WARNING: This software is a beta version, you may encounter bugs or unexpected behaviours. Please discuss any issues in the Due forum

Ciao Uwe

Ok grazie, ho capito. Non era molto chiaro il passaggio. Sembrava un passaggio naturale: --> 0023 --> 1.0.x --> 1.5

Ma sostanzialmente cosa cambia tra l'avere la 1.0 o la 1.5, limitatamente parlando di Arduino "vecchi"?

Ma sostanzialmente cosa cambia tra l'avere la 1.0 o la 1.5, limitatamente parlando di Arduino "vecchi"?

Che la 1.5.x é beta e la 1.0.5 é definitiva. La 1.5.0 non ha inclusi tutti gli ultimi modelli Arduino che sono stati messi sul mercato come Arduino Robot e il display TFT.

La ARDUINO 1.5.2 BETA ha i aggiornamenti della 1.0.4 percui la penultima versione della 1.0.x

Ciao Uwe

Cioè, praticamente per un uso normale non cambia "na sega". Non mi sembra di ravvisare la necessità di installare anche la 1.0.x....

BaBBuino:
... Non mi sembra di ravvisare la necessità di installare anche la 1.0.x....

No, se non hai problemi e se non ti servono le cose aggiunte nella 1.0.5, allora puoi tranquillamente continuare ad usare la 1.5.2 BETA (... tenendo sempre presente che è una BETA e che, personalmente, NON userei mai una BETA per andare in produzione). :slight_smile:

Guglielmo