Tengo un sensor de luz IC.
tengo 2 preguntas:
En este caso, ¿es correcto colocar los pull ups del I2C cerca del microcontrolador en la PCB del microcontrolador, o debo colocarlo en la PCB del sensor de luz? Por lo que he leído, las resistencias pull-up deben colocarse cerca del maestro y, por lo tanto, creo que deben colocarse cerca del microcontrolador. Por favor confirmar.
Estas son realmente dos preguntas diferentes:
Para la primera parte es fácil: simplemente no los conectas. O también puede conectarlo a tierra si ayuda (generalmente para la conducción térmica). La estructura interna es simplemente un MOSFET con la fuente a tierra y el drenaje... abierto (y alguna estructura de protección ESD, por lo general). Simplemente no lo ate a otra cosa que no sea un suelo.
En cuanto a la segunda pregunta, hay una explicación un tanto detallada en las especificaciones de I2C (descarga de NXP) pero, en resumen, hay una regla fácil: colóquelos en algún lugar del suministro relevante con algunos kiloohmios de resistencia.
I2C no está controlado por impedancia, por lo que no es realmente importante dónde o cómo lo hace. Se podría argumentar que más o menos en el medio podría ser un poco mejor. El bus en sí es multimaestro (o al menos puede serlo) por lo que no hay un punto de generación de señal preferido. Así que simplemente coloque los pullups donde sea conveniente.
En cuanto al valor, eso es algo importante. La resistencia pullup crea un circuito RC con la capacidad de pista parásita. En resumen, una resistencia más grande provoca un tiempo de subida más largo, lo que podría infringir las especificaciones de tiempo. Una resistencia demasiado pequeña sobrecargaría los conductores del autobús.
A menos que tenga un autobús muy largo o lleno de gente o esté haciendo I2C de alta velocidad, realmente no importa. Los valores populares son 2k2 o 4k7 ohmios. En caso de problemas, consulte con un visor y sintonícelos.
DoxyLover
novato