¿En qué punto uno tiene que usar un búfer I2C?

5

Estoy diseñando un sistema que se puede expresar en un esquema abstracto como este:

HayunaMCUprincipalqueactúacomomaestroI2Cyalgunosesclavos.AlgunosdeellosestánenlamismaPCB,peroalgunosestánconectadosconcablesenotrasPCB.EnelcasodeSlave7ySlave8,hayunaconexión"en serie": un cable largo va a la PCB4 desde la PCB1 y luego desde la PCB4 a la PCB5.

Estoy trabajando en modo estándar (100 kHz). La velocidad no es el caso aquí, pero la fiabilidad. Este circuito me parece que tiene mucha capacitancia debido a muchos dispositivos conectados y cables largos (de 1m a 2m). Estoy pensando en usar buffers I2C, como PCA9515A.

Considero algunas opciones:

No use tampones en absoluto, tal vez a esta velocidad, ¿es lo suficientemente bueno con pull-ups de baja resistencia?

Use solo 1 búfer para dividir el bus en 2 lados: En el primer lado: Maestro, Esclavo1, Esclavo2, Esclavo3 y Esclavo4. en el otro: Slave5, 6, 7, 8.

Use muchos buffers (cada PCB tendrá uno). PCB4 tendría 2, ya que está "puenteando" el bus a PCB5.

¿Qué crees que sería necesario? Entiendo que esta es una función de la capacitancia del bus y la longitud de los cables, pero aquí estoy buscando un enfoque genérico escalable. Agradecería toda la ayuda.

Notas laterales: todos los dispositivos son lógicos 3V3, por lo que no hay ganancia al aumentar la amplitud de las señales. También me preguntaba cómo convertir las señales del bus SDA en un par diferencial con IC dedicados, pero parece que los cables no son tan largos.

    
pregunta Bremen

1 respuesta

8

Debería usar un búfer en cualquier momento en que la capacitancia del bus sea más de 400pF . Si apenas estás llegando a eso, entonces puedes tomar la decisión de usar pull-ups más fuertes en lugar de un búfer.

En general, si te vas a un cable, debes tener un búfer allí. Si alguna vez quisiste tener cables más largos, te alegrarías de que hubiera un búfer para soportarlo. Para obtener más información al respecto, consulte esta pregunta .

    
respondido por el Samuel

Lea otras preguntas en las etiquetas