Pagina 1 di 2

Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 7:51
da DeltaElectronics
Buongiorno,
Volevo chiedervi di dare una occhiata a questo oggetto:
https://learn.sparkfun.com/tutorials/us ... nt-display
Ho provato a seguire il tutorial indicato, scaricando il codice per I2C dentro il mio Arduino.
Non sono riuscito ad avere nessun risultato :-x
Utilizzando un semplice programma di scanning I2C ho scoperto che:
Riesco a parlare con la mia scheda
L'indirizzo in realtà non è 0x71 ma 0x70.
E' normale che, una volta data tensione al dispositivo, il display a 7 segmenti rimanga spento ?

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 8:03
da boiler
DeltaElectronics ha scritto:L'indirizzo in realtà non è 0x71 ma 0x70.

0x70 e 0x71 sono lo stesso indirizzo. L'LSB indica se sei in lettura (1) o scrittura (0).

E' normale che, una volta data tensione al dispositivo, il display a 7 segmenti rimanga spento ?

Possibile... la risposta c'è nel datasheet... ah, no, un momento, è un prodotto sparkfun/adafruit/aliexpress... ?%

Boiler

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 9:30
da WALTERmwp
DeltaElectronics ha scritto:(...) E' normale che, una volta data tensione al dispositivo, il display a 7 segmenti rimanga spento ?
se non hai commesso errori, dipende da come è implementato il firmware del micro che pilota i display, quindi potrebbe essere normale: se i segmenti dei display non vengono pilotati, restano spenti.
Prova a controllare l'alimentazione (la luminosità è in funzione del suo livello) e cerca di comprendere, in base al codice caricato su Arduino, ciò che ti dovresti attendere.
Per me, con quello che scrivi, è difficile aggiungere altro.

Saluti

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 13:01
da xyz
Il dispositivo usa API di Arduino, l'indirizzo I2C viene specificato con lo shift di 1 bit a sinistra, 0x70 è l'indirizzo in scrittura, 0x71 in lettura.

Il firmware del dispositivo è open source e nella pagina indicata prima riporta URL dei sorgenti. La funzione di inizializzazione del display è "setupDisplay":

https://github.com/sparkfun/Serial7Segm ... ctions.ino

dai commenti dice che spegne i 7 segmenti e il punto decimale.

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 16:03
da DeltaElectronics
Ti ringrazio @xyz, ma non mi sembra molto chiara la tua risposta.
xyz ha scritto:Il dispositivo usa API di Arduino, l'indirizzo I2C viene specificato con lo shift di 1 bit a sinistra, 0x70 è l'indirizzo in scrittura, 0x71 in lettura.

Io devo scrivere, non leggere; quindi mi sembra corretto 0x70 come indirizzo, non 0x71.
Tra l'altro l'I2C scanner mi risponde con il 0x70 e non 0x71; in ogni modo non funxiona in nessun modo con entrambi gli indirizzi.
xyz ha scritto:Il firmware del dispositivo è open source e nella pagina indicata prima riporta URL dei sorgenti. La funzione di inizializzazione del display è "setupDisplay":

https://github.com/sparkfun/Serial7Segm ... ctions.ino

dai commenti dice che spegne i 7 segmenti e il punto decimale.

Vorresti forse dire che prima dovrei fare un uoload del fw del dispositivo?
E come potrei fare ?
Grazie ancora.

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 16:14
da raunarde
i2c scanner ti risponde così perché va a leggere l'indirizzo. poi quando dovrai scrivere tu dovrai mettere l'indirizzo a 1

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 18:00
da xyz
Per l'indirizzo I2C ti hanno già risposto aggiungo solo che l'API di Arduino non brilla di coerenza e chiarezza.

Il firmware è già installato, infatti ti risponde al bus I2C, ti ho semplicemente indicato i sorgenti perché molto spesso i programmi open source non rilasciano separatamente della documentazione, è il sorgente stesso la documentazione.

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 20:44
da DeltaElectronics
raunarde ha scritto:i2c scanner ti risponde così perché va a leggere l'indirizzo. poi quando dovrai scrivere tu dovrai mettere l'indirizzo a 1

Ti ringrazio.... ma usando l'indirizzo 0x71 non succede nulla !!!!

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 20:56
da xyz
Se da uno scan di indirizzi I2C riporta un device I2C a quell'indirizzo significa che esiste qualcosa di attivo con quel indirizzo I2C. Come ho riportato prima il firmware interno di default mette il display tutto spendo, devi essere tu a comandarlo nel modo corretto per utilizzarlo.

Re: Display 7 segmenti I2C

MessaggioInviato: 19 giu 2018, 21:31
da DeltaElectronics
xyz ha scritto:Se da uno scan di indirizzi I2C riporta un device I2C a quell'indirizzo significa che esiste qualcosa di attivo con quel indirizzo I2C. Come ho riportato prima il firmware interno di default mette il display tutto spendo, devi essere tu a comandarlo nel modo corretto per utilizzarlo.

Infatti... il punto è che non so quale potrebbe essere il modo corretto per utilizzarlo; l'esempio sopra riportato non funziona per nulla.
Tra le altre cose, non comprendo per quale motivo:
-) Lo scanner I2C mi risponde unicamente con l'indirizzo di scrittura, e non anche con quello di lettura
-) Se non sbaglio io dovrei scrivere dei comandi, non leggere... quindi dovrei usare l'indirizzo di scrittura (0x70) e non quello di scrittura (0x71) come riportato nel tutorial.
-) Non ho la minima idea di come poterlo comandare, visto che il tutorial non funziona per nulla.