Buongiorno a tutti.
Mi trovo a dover affrontare una comunicazione su bus I2C, ma in una configurazione un po' particolare e volevo chiedere lumi alla community riguardo possibili soluzioni.
Ho un dispositivo, che si chiama HP Edgeline EL300, che espone una rastrelliera di pin che sono controllati da un bus I2C.
Abbiamo appreso, con non poca difficoltà, che questo edgeline sul bus si comporta SEMPRE come master, nel senso che sia in caso debba scrivere sul bus, che nel casso debba leggere, è sempre lui ad iniziare la comunicazione.
A questo punto io devo realizzare, tramite il mio controller, che è l'STM32F103, un dispositivo I2C slave, che possa, almeno in questo momento trasmettere dati su questo bus.
Dunque chiedo: dal momento che su questo bus non esistono altri nodi oltre il master stesso, ed il mio controller che sarà lo slave, è possibile instaurare una comunicazione qualunque sia l'I2C-ADDRESS comunicato allo slave?
Lo cheìiedo perché, stando a quanto letto sul reference manual del controller (lo slave: l'STM32), esiste un apposito registro che si chiama OAR (Own Address Register), che si occupa proprio di assicurarsi che l'indirizzo trasmesso corrisponda a quanto precedentemente impostato.
Spero di aver chiarito il mio dubbio.
Grazie.
Buna giornata.
Bus I2C. Strana configurazione. Come gestirla?
Moderatore:
Paolino
3 messaggi
• Pagina 1 di 1
0
voti
Ciao,
il BUS I2C consente la comunicazione multi-master quindi puoi attaccare su BUS sia master che slave. A seconda della complessità della periferica hardware all' interno del microprocessore può essere o meno prevista la possibilità di rilevare collisioni su bus.
non ho capito bene cosa intendi con questo:
il BUS I2C consente la comunicazione multi-master quindi puoi attaccare su BUS sia master che slave. A seconda della complessità della periferica hardware all' interno del microprocessore può essere o meno prevista la possibilità di rilevare collisioni su bus.
non ho capito bene cosa intendi con questo:
harpefalcata ha scritto: è possibile instaurare una comunicazione qualunque sia l'I2C-ADDRESS comunicato allo slave?
0
voti
harpefalcata ha scritto: esiste un apposito registro che si chiama OAR (Own Address Register), che si occupa proprio di assicurarsi che l'indirizzo trasmesso corrisponda a quanto precedentemente impostato.
Che è esattamente ciò che ti occorre per poter lavorare in modalità slave.
Uno slave non può sapere se esiste solo lui o se ci sono altri millemila slave sul canale, per questo motivo risponde solo e soltanto quando viene interrogato, i.e. quando viene fatta una richiesta di servizio rivolta allo slave su quel determinato indirizzo.
Non puoi usare quel valore di indirizzo nel tuo master?
"The past is not really the past until it has been registered. Or put another way, the past has no meaning or existence unless it exists as a record in the present."
John Archibald Wheeler
John Archibald Wheeler
3 messaggi
• Pagina 1 di 1
Torna a Firmware e programmazione
Chi c’è in linea
Visitano il forum: Nessuno e 4 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)



