Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Display 7 segmenti I2C

Tipologie, strumenti di sviluppo, hardware e progetti

Moderatore: Foto UtentePaolino

0
voti

[1] Display 7 segmenti I2C

Messaggioda Foto UtenteDeltaElectronics » 19 giu 2018, 7:51

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 ?
Avatar utente
Foto UtenteDeltaElectronics
224 1 3 7
Sostenitore
Sostenitore
 
Messaggi: 597
Iscritto il: 27 set 2015, 14:01

0
voti

[2] Re: Display 7 segmenti I2C

Messaggioda Foto Utenteboiler » 19 giu 2018, 8:03

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
Avatar utente
Foto Utenteboiler
26,4k 5 9 13
G.Master EY
G.Master EY
 
Messaggi: 5599
Iscritto il: 9 nov 2011, 12:27

0
voti

[3] Re: Display 7 segmenti I2C

Messaggioda Foto UtenteWALTERmwp » 19 giu 2018, 9:30

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
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8982
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[4] Re: Display 7 segmenti I2C

Messaggioda Foto Utentexyz » 19 giu 2018, 13:01

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.
Avatar utente
Foto Utentexyz
6.864 2 4 6
G.Master EY
G.Master EY
 
Messaggi: 1778
Iscritto il: 5 dic 2009, 18:37
Località: Italy Turin

0
voti

[5] Re: Display 7 segmenti I2C

Messaggioda Foto UtenteDeltaElectronics » 19 giu 2018, 16:03

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.
Avatar utente
Foto UtenteDeltaElectronics
224 1 3 7
Sostenitore
Sostenitore
 
Messaggi: 597
Iscritto il: 27 set 2015, 14:01

0
voti

[6] Re: Display 7 segmenti I2C

Messaggioda Foto Utenteraunarde » 19 giu 2018, 16:14

i2c scanner ti risponde così perché va a leggere l'indirizzo. poi quando dovrai scrivere tu dovrai mettere l'indirizzo a 1
Avatar utente
Foto Utenteraunarde
115 4
New entry
New entry
 
Messaggi: 73
Iscritto il: 25 mar 2012, 19:31

0
voti

[7] Re: Display 7 segmenti I2C

Messaggioda Foto Utentexyz » 19 giu 2018, 18:00

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.
Avatar utente
Foto Utentexyz
6.864 2 4 6
G.Master EY
G.Master EY
 
Messaggi: 1778
Iscritto il: 5 dic 2009, 18:37
Località: Italy Turin

0
voti

[8] Re: Display 7 segmenti I2C

Messaggioda Foto UtenteDeltaElectronics » 19 giu 2018, 20:44

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 !!!!
Avatar utente
Foto UtenteDeltaElectronics
224 1 3 7
Sostenitore
Sostenitore
 
Messaggi: 597
Iscritto il: 27 set 2015, 14:01

0
voti

[9] Re: Display 7 segmenti I2C

Messaggioda Foto Utentexyz » 19 giu 2018, 20:56

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.
Avatar utente
Foto Utentexyz
6.864 2 4 6
G.Master EY
G.Master EY
 
Messaggi: 1778
Iscritto il: 5 dic 2009, 18:37
Località: Italy Turin

0
voti

[10] Re: Display 7 segmenti I2C

Messaggioda Foto UtenteDeltaElectronics » 19 giu 2018, 21:31

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.
Avatar utente
Foto UtenteDeltaElectronics
224 1 3 7
Sostenitore
Sostenitore
 
Messaggi: 597
Iscritto il: 27 set 2015, 14:01

Prossimo

Torna a Realizzazioni, interfacciamento e nozioni generali.

Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti