TODOPIC
FORO TÉCNICO => Foro Técnico => Mensaje iniciado por: jeremylf en 18 de Noviembre de 2010, 11:45:09
-
Hola.
Quiero implementar un sistema de 50 o mas esclavos y un solo maestro con I2C... Sabrian si esto es posile? Pues, he leido que el numero maximo es de 400pf pero nose como medir esto. Por otro lado, cada esclavo estaria en una placa independiente (el maestro tambien) y quiero saber si con unos transistores previos en sus lineas de transmicion seria suficiente para que no hayan problemas pues, la distancia llegaria hasta unos 50 metros aproximadamente?
Gracias, un saludo.
-
Hola!
Según el dispositivo a conectar como esclavo, puedes colocar hasta 16 si son todos iguales (A0, A1, A2 y A3)(Hay casos que sólo se admite uno solo). Si son diferentes, puedes hacer combinaciones hasta 256 (primer nibble: dirección del dispositivo dentro del bus, segundo nibble A0, A1, A2, A3: número de dispositivo según su dirección). El problema es la distancia desde el dispositivo maestro hasta los esclavos. I2C no soporta mucha distancia. Si vás a hacer un trabajo extenso (en longitud de cableado) te conviene RS485.
Saludos!
Mario
-
50m es mucho.
El i2c es más para trabajar dispositivos en una sola placa y distancias cortas(tambien en otras placas XD pero distancias cortas).
(Por ahí en un hilo xD hay documentos de como calcular la resistencia de pull-up y elnumero de dispositivos soportados,me parece que el pana Cryn abrio ese tema).
Lo mejor para esa distancia es lo que te recomienda Mario.
Saludos!
-
Hmm pero si la señal pasaba por unos transistores haciendo el papel de buffers primero para que no se pierda la señal... no se arreglaria el problema de la distancia? Por otro lado, entonces, en total, puedo colocar hasta 255 dispositivos en un mismo bus i2c?
Gracias.
-
Pues como dice Mario, yo quiero controlar la iluminacion de mi casa y llevo muchos tiempo en eso, y por ese me he decidido en hacerlo RS-485 o DMX512 , porque la distancia no tiene limite, tambien es posible que implementandolo con los Xbee y el protocolo I2C alcance mas de Mil metros, pero te va a dar muchos trabajos implementarlos. por eso te recomiendo RS-485.
Saludos
-
Exactamente que dispositivos quieres conectar? Así se te asegura la cantidad posibles de ellos en el bus. Eso si, I2C no es para grandes distancias.
-
Tanto el maestro como toooodos los escalvos son PICs... es para ESTO (http://www.todopic.com.ar/foros/index.php?topic=30294.msg274522#msg274522)
Alfinal, por lo de la distancia creo que no lo hare por i2c.
Gracias de todas formas.
-
Es cierto que I2C no es lo ideal para grandes distancias, y al igual que Mario, te recomiendo RS485.
Pero no es menos cierto que la distancia a la que funcionan bien las comunicaciones I2C es inversamente proporcional a la velocidad de la comunicación. Yo he efectuado comunicaciones I2C con éxito a 100 metros usando cable apantallado, bajando la frecuencia de transmisión a 10KHz.
-
Pues como todos han dicho en este foro la comunicacion i2c es pa distancias cortas, sin embargo, existe un dispositivo que te permite trabajar con distancias incluso de 500 metros, el sipositivo es el P82B715, es un extensor de distancias de i2c. Es un dispositivo muy facil de usar y realmente no es muy caro para los beneficios que presenta, por otra parte la capacitancia que te dan como limite en el bus i2cse refiere a la capacitancia del cable y y del dispositivo esclavo, puedes encontrar estos datos en el datasheet de tu esclavo y en la hoja tecnica del cable que estas usando.
Espero te sirva esta información.