Pages: [1]   Go Down
Author Topic: Arduino Ethernet e NRF24L01+  (Read 1128 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti,

dal presente articolo,
http://tronixstuff.wordpress.com/2011/05/13/tutorial-arduino-and-the-spi-bus/

Ho capito che il protocollo SPI di un Arduino (UNO / MEGA) non può funzionare allo stesso tempo con un arduino ethernet shield e un transceiver NRF24L01+ perché entrambi i dispositivi utilizzano la SPI. Inoltre, è necessario duplicare il bus SPI.

Quindi, per evitare questi problemi, pensavo che usando un Arduino Ethernet è possibile utilizzare il NRF24L01 + e il cavo ethernet senza problemi sulle connessioni SPI.

Secondo voi è corretta la mia analisi?

Grazie in anticipo,
Gianfranco
Logged

Tuscany
Offline Offline
Edison Member
*
Karma: 79
Posts: 2166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

non proprio.

Usare una scheda UNO + Ethernet shield o un Arduino Ethernet e' la stessa identica cosa.
In tutti e due sono usati gli stessi pin SPI.

Comunque l'Ethernet e il NRF24L01 possono coesistere, basta che usi un CS ( Chip Select ) diverso
SCK = 13
MISO = 12
MOSI = 11
CS Ethernet = 10
In pratica non devi usare il pin 10, perche' riservato alla ethernet

PS. Dato che sia lo Shield che Arduino Ethernet hanno a bordo anche lo slot SD, anche il pin 4 e' riservato

 

Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao grazie per la tua risposta.

Ma utilizzando Arduino Ethernet mi eviterebbe almeno la modifica hardware che dovrei fare con la UNO+shield per parallelizzare il bus SPI?(al fine di collegare in parallelo shield+NRF).

Grazie ancora...
Logged

Tuscany
Offline Offline
Edison Member
*
Karma: 79
Posts: 2166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Come ti dicevo, e' la stessa cosa. Anche a livello meccanico.
In tutti e due i sistemi hai il bus SPI su quei pin.

La shield riporta TUTTI i pin di collegamento
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si, però quello che non capisco è questo:
mentre nel primo caso la ethernet shield è infilata in arduino UNO tramite i pin maschio(della shield) e i pin femmina(della UNO), per cui per collegare un transceiver NRF sui pin SPI bisogna fare una modifica hardware di fili affinché sia in parallelo con la shield, nel secondo caso dovrei evitare questa parallelizzazione di fili in quanto la arduino ethernet ha i soli pin femmina nei quali posso infilare il transceiver NRF.

Se invece infilassi il transceiver NRF nei pin femmina della ethernet shield, metterei le due periferiche in serie anziché in parallelo. Ecco perchè secondo me converrebbe di più usare la sola ethernet shield.

Ti trovi con me su questa cosa?
http://arduino.cc/en/uploads/Main/ArduinoEthernetFront.jpg



Per quanto riguarda la gestione di funzionamento, mi sto informando meglio e mi trovo con quello che dici e cioè che tramite il pin CSN (chip enable), posso attivare uno e spengnere l'altro e viceversa (ponendo i pin a LOW/HIGH) a seconda dell'uso.

Intanto grazie ancora e scusa le domande banali...
Gianfranco

« Last Edit: January 12, 2013, 06:27:18 am by crystal13 » Logged

Tuscany
Offline Offline
Edison Member
*
Karma: 79
Posts: 2166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti faccio un disegnino, cosi' ti rendi conto che esiste solo un collegamento in parallelo.

Quote
Per quanto riguarda la gestione di funzionamento, mi sto informando meglio e mi trovo con quello che dici e cioè che tramite il pin CSN (chip enable), posso attivare uno e spengnere l'altro e viceversa (ponendo i pin a LOW/HIGH) a seconda dell'uso

Ci pensano le librerie


* spi.png (12.95 KB, 678x804 - viewed 47 times.)
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Cavolo, io pensavo che il bus arduino_UNO<->ethernet_shield forse in serie!

Ora ho capito grazie!!

Quindi sui pin femmina della ethernet_shield (una volta collegata sulla UNO), posso collegare l'NRF e si trova già in parallelo?

A questo punto, poichè arduino ethernet per essere programmata via PC necessita dell'adattatore seriale/USB, mi sa conviene di più la combinazione della UNO+shield.
 smiley-red smiley-red
Logged

Tuscany
Offline Offline
Edison Member
*
Karma: 79
Posts: 2166
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Quindi sui pin femmina della ethernet_shield (una volta collegata sulla UNO), posso collegare l'NRF e si trova già in parallelo?

Yes


Quote
A questo punto, poichè arduino ethernet per essere programmata via PC necessita dell'adattatore seriale/USB, mi sa conviene di più la combinazione della UNO+shield.

Ci sono fattori economici e fattori di praticita'.
Se non hai problemi di dimensione.... allora usa lo shield
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok grazie mille, chiarissimo.

ps. come mai mi hai indicato che anche che il pin 4 è riservato? Serviva a qualcosa nel problema che ho posto o l'hai indicato giusto per info?

Logged

Pages: [1]   Go Up
Jump to: