Trataré de explicar esto en términos simples .
¿Qué sucede si no tenemos resistencia pull up?
Cualquier controlador esencialmente tendrá dos interruptores, uno para conectarse a VDD y otro para conectarse a GND. Estos interruptores 1,2,3 y 4 están allí en la imagen de arriba para ese propósito. La imagen de arriba muestra dos controladores I2C conectados al mismo bus.
Ahora digamos que el conductor 2 quiere conducir el bus a baja velocidad usando el interruptor 4. Se supone que el conductor 1 está inactivo durante este tiempo. Pero de acuerdo con la lógica de control, uno de los interruptores 1 o 2 debe estar encendido. Eso significa que habrá dos interruptores que conducen el autobús (puede ser 1 y 4 o 2 y 4) al mismo tiempo. Ambos controladores pueden intentar conducir el bus a diferentes valores, lo que puede resultar en una falla en la operación (esto se denomina contención del bus).
Que sucede con la resistencia pull up
Para evitar esto, generalmente los controladores I2C usan resistencias pullup (esto es muy similar a la familia lógica TTL). El controlador I2C solo tendrá interruptores desplegables (2 y 4). Ahora considere el caso anterior donde uno de los dos maestros está manejando el autobús y el otro quiere permanecer inactivo. El primer transistor desplegable del conductor estará apagado, por lo que su presencia no tendrá ningún efecto.
Si ninguno de los maestros está manejando el bus, el bus se elevará a través de la resistencia de pull-up débil. Cuando alguno de los conductores quiere bajar el autobús, sobrepasará la capacidad de conducción de la resistencia.
Elegir el valor de la resistencia pull up
Elegir el valor del valor de resistencia pull up dependerá de la cantidad de dispositivos conectados al bus. Si el número de dispositivos es demasiado, la carga de la tapa en el bus aumentará y, por lo tanto, se recomienda usar un valor de resistencia bajo, ya que no dañará los bordes del reloj / datos.
El límite más bajo en la resistencia pull-up dependerá de la capacidad de hundimiento del transistor pull-down en el controlador. Porque la cantidad de corriente aumenta a medida que usamos menos valor de resistencia.
- Electrónica analógica: ¿Qué es un traductor de nivel?
- ¿Hay algún evento público donde se usó NFC?
- Soy graduado en electrónica en el año 2011, no puedo obtener un trabajo de desarrollo integrado. ¿Qué habilidades se requieren para un trabajo en desarrollo integrado?
- ¿Hay empresas que desarrollen hardware electrónico que pueda conectarse a aplicaciones de Android a través del puerto USB?
- ¿Cómo puedo sobresalir en mi sucursal (ECE)?
Espero que esto ayude. No pude dibujar ningún diagrama. Echa un vistazo a las referencias que he mencionado. Se volverá más claro.
Referencias
1. Cómo funciona el hardware I2C
2. resistencia pull-up
3. http://www.ti.com/lit/an/scaa106…