Pages: [1]   Go Down
Author Topic: Ethernet Shield + Sd Shield  (Read 1134 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola a todos, acabo de montarme mi propio ethernet shield con un ENC28J60 con éxito.

Mi pregunta es, tengo un "shield" casero también que es un lector de tarjetas SD, es posible usar los 2 simultáneamente ya que los dos usan el SPI para comunicarse ?

Muchas Gracias!
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se me olvidaba.... supongo que el truco es usar el CS de cada shield..... alguien sabe alguna manera sencilla de hacerlo ¿?
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mas cosas ..... es que me vienen a la cabeza
para el SD utilizo la libreria SDFAT
para el ETHERNET utilizo la libreria ETHERSIELD

quizás modificando la definición del pin 10 (CS) en alguna libreria pueda funcionar¿?

Mi idea es utilizar alguno de los 74HC595 que tengo para usar alguna de sus salidas para activar / desactivar el CS necesario....

Gracias
Logged

Barcelona
Offline Offline
Full Member
***
Karma: 0
Posts: 136
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Iceman,

puedes activar/desactivar el CS con alguna puerta digital. Recuerda que el MISO de los dispositivos esclavos debe de ser triestado.

Otra opción es que utilices el modo daisy chain, para ello tendrás que comprobar que lo soportan los esclavos.


http://www.zigbe.net/
Logged


0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias zigbe31416.

Intentaré montar algo con alguna puerta lógica a ver que tal.... aunque dado mi "limitado" conocimiento de electrónica no se como saldrá.

Gracias igualmente.
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bueno, he modificado las librerias asignando el Pin CS al 8 y al 9, he puesto el pin 10 a nivel alto, pero nada, el problema seguro que es el estado del MISO.

Como podría ponerlo en estado Z

Si quito el pin del MISO del módulo Ethernet funciona el módulo SD y viceversa....
A ver si alguien me puede dar una mano...

Gracias.
Logged

0
Offline Offline
Edison Member
*
Karma: 16
Posts: 1579
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola,

En esta nota técnica de Atmel tienes toda la implementacion del SPI muy bien explicada:

http://www.atmel.com/dyn/resources/prod_documents/doc2585.pdf


Una cosa a tener en cuenta, es que aunque no uses el pin SS (pin 10), lo tienes que poner como SALIDA para que siempre sea modo maestro. Cuando dices que lo pones a nivel alto.... quieres decir que esta configurado como salida + nivel alto?? Lo digo, porque en lenguaje Arduino, puedes usar digitalWrite tambien en una entrada (para activar la resistencia interna de pull up).
Bueno, en la nota técnica tienes la tabla de verdad de los modos segun el estado del pin SS (CS).


Saludos,


Igor R.
« Last Edit: July 16, 2010, 02:47:29 pm by igorreal » Logged


0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias Igor por la doc tecnica , en cuanto pueda le doy un vistazo.

Correcto, el pin 10 lo tengo como salida y a nivel alto.
Sigo intentando a ver que tal.

Logged

Barcelona
Offline Offline
Full Member
***
Karma: 0
Posts: 136
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ICEMAN,

si te pasa eso seguramente es porque el MISO de los dispositivos esclavos no admiten triestado.

Podrías poner una puertas triestado en los MISOS de cada dispositivo de forma que cuando actives el CS de un dispositivos, con la misma señal pongas en triestado el MISO del otro.

te lo digo desde un punto de vista teórico, pero seguramente te funcionará.

http://www.zigbe.net/
Logged


0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias Zigbe31416.

Creo que ese es el problema. El esquema que utilicé para montar el shield de ethernet usa un 7408 para subir los niveles de 3.3 a 5 v. Dando vueltas por ahí he visto que es una puerta lógica pero no triestado.

He visto algún esquema con puertas triestado tipo 74ls125, quizás sea esa la solución.... Iré a buscar alguna y ya diré

Saludos.
Logged

Pages: [1]   Go Up
Jump to: