| |
| | #1 (permalink) Top |
| User |
@Fausto: il protocollo, sia hw che sw, del bus I2C è nato come single master multi slave, uno comanda gli altri ubbidiscono, in qualche modo è simile al Profi-BUS nativo. In effetti è possibile connettere anche 2 master fra loro e farli cooperare/dialogare per gestire gli slave, è però una configurazione limite e piuttosto pericolosa come affidabilità, se a questo aggiungi una bassa velocità di comunicazione ed una scarsa efficienza (basso payload) tutto ciò rende il protocollo I2C adatto ad applicazioni con pochi slave, poco rischiose e con latenze lunghe. Personalmente preferisco operare le comunicazioni in sistemi multi-master e multi slave utilizzando la SPI localmente e protocolli più sofisticati su distanze maggiori (Profi-BUS, CAN-BUS etc.).
__________________ Peace & Love Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein) |
| | |
| | #2 (permalink) Top | |
| User Data registr.: 19-07-2008 Residenza: catania
Messaggi: 978
| okkio
o.. che piacere ..son contento che sei entrato in questa discussione... ..dunque.. ad un mio ex-collega gli avanzava un ACCELEROMETRO A TRE ASSI.. me lo ha regalato.. ...il dispositivo ha dentro un LIS302DL http://www.st.com/internet/com/TECHN...CD00135460.pdf Mi son detto vediamo un pò se riesco a prelevare i dati... ..qualche giorno fa, ho letto questo tutorial.. che sebbene lavora su un 16F84... permette di capire chiaramente passo passo le fasi della comunicazione I2C Il protocollo seriale I2C con un PIC16F84 - Davide Bucci Oggi pomeriggio ho letto da questo link, piu completo soprattutto la parte che riguarda gli indirizzi degli Slave. Gioblu robotics | Il protocollo I2C | Bit, Master, Slave, Bus, Dati lo trovo completo, inoltre spiega cose che altrove non avevo ancora letto ovvero la gestione degli indirizzi degli Slave come possono essere gestiti ecc.. Adesso cerchero di incrociare le informazioni della documentazione, con quelle del software per arduino.. .in modo da capire.. Arduino & LIS302DL in attach una foto del device Citazione:
| |
| | |
| | #3 (permalink) Top |
| User Data registr.: 19-07-2008 Residenza: catania
Messaggi: 978
| OK faccio un passo indietro
ok... Elnonio ..seguo il tuo consiglio... ...credo che ascoltare i tuoi consigli sia una cosa molto saggia... ..per cui cambio strategia ..provo a studiare qui: L'interfaccia SPI a dopo fausto |
| | |
| | #4 (permalink) Top | |
| User Data registr.: 19-07-2008 Residenza: catania
Messaggi: 978
| Spi
ciao in merito a SPI credo d 'aver trovato un ottimo riferimento qui, una guida completa che parte dalla teoria e finisce con la pratica : Using Serial Peripheral Interface (SPI) Master and Slave with Atmel AVR Microcontroller | ermicroblog In merito al LIS302DL e la lettura dell'accelerometro: I pin da usare : SS pin 10 PWM SDI pin 11 PWM SDO pin 12 digital pin SCK pin 13 digital pin QUINDI PER RICEVERE I DATI DAL DEVICE OCCORRE digitalWrite(slaveSelectPin,LOW); abbassa l' SS quindi start SCK byte value_X = SPI.transfer(address); riceve il valore registrato all'indirizzo digitalWrite(slaveSelectPin,HIGH); adress [X,X,X,X,X,X,0,0] byte [0,0,0,0,0,0, 0,1] adress |= (2 << 0x01); A Citazione:
| |
| | |
| | #5 (permalink) Top |
| User Data registr.: 19-07-2008 Residenza: catania
Messaggi: 978
| qualcosa si muove!
dunque a distanza di tempo ho ripreso l'argomento, in pratica sto usando un pic 12F629, uno dei piu piccoli micro , giusto per dare un valore didattico, al momento sono riuscito ad ottenere l' ack dal dispositivo.. il dialogo è il seguente - invio Condizione di START - invio BYTE di ID dispositivo con modalità W - condizione di ascolto per ricevere l'Ack (fin qui ok ricevo l'ack dal device) -adesso dovrei inviare nuovamente l'indirizzo di prima con il bit più singnificativo posto a UNO, se desidero l'auto incremento altrimenti ZERO -dovrei aspettare nuovamente l'Akc - invio Condizione di START - invio BYTE di indirizzo dato a 7 bit con in più il bit per dire Read (ho intenzione di leggere) a voi eventuali consideraazioni |
| | |
![]() |
| Bookmarks |
| |
Discussioni simili | ||||
| Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
| I2C - lezione | faustog_2 | Circuiti Elettronici | 1 | 13 marzo 12 20:36 |
| I2C - lezione | faustog_2 | Circuiti Elettronici | 3 | 23 febbraio 12 11:06 |
| I2C PIC SLAVE | LeoPG | Circuiti Elettronici | 1 | 17 febbraio 05 19:51 |