Relación entre el consumo de energía / energía extraída I2C y la velocidad de datos

5

Refiriéndome exactamente a lo que dibujan las líneas I2C, ¿me equivoco al pensar que cuanto mayor sea la frecuencia del reloj, más corto será el tiempo (la misma cantidad de) corriente que fluye a través de las detonaciones y, por lo tanto, menor consumo de energía?

qeustion lateral

No creo que vaya a alcanzar los 100 kHz, eso está muy por encima del límite de mi hardware. Estoy alternando entre unos 32 y 4 kHz. ¿El mismo valor de resistencia (3.3k @ 3V) será bueno para ambos?

    
pregunta kellogs

4 respuestas

5

La frecuencia de reloj más alta generalmente requiere un valor de pull-up más bajo, lo que aumenta la corriente.

El aumento de la frecuencia de reloj de 100 kHz a 400 kHz generalmente requiere que el pull-up se reduzca con un factor de 4-5.

Dado que la potencia es inversamente proporcional a la resistencia, la potencia consumida será casi la misma.

    
respondido por el Peter Karlsen
7

Los datos I2C y las líneas de reloj consumen energía cuando se agotan. Porque entonces la energía se hunde a través de las resistencias pull-up.

Mientras una línea está baja, dibujará 5V / 4.7k \ $ ~ \ Omega \ approx \ $ 1mA. Suponiendo 5V VCC y resistencias pullup 4.7k.

La línea del reloj tendrá un ciclo de trabajo del 50%. La línea de datos es baja, al menos 1 de cada 9 ciclos de reloj (cada ack para un byte exitoso) pero rara vez va a enviar / recibir solo 0xff bytes. Es más probable que se saque bajo el 75% del tiempo.

Pero, de hecho, un reloj más rápido significa una transmisión más corta, lo que significa menos pérdida de potencia a través de los pull-ups. Sin embargo, una transmisión más rápida puede requerir resistencias de menor valor para superar la capacitancia parásita entre las líneas y la tierra.

    
respondido por el ratchet freak
6

Tu pensamiento es correcto, siempre y cuando puedas alcanzar una velocidad más alta con las mismas resistencias de levantamiento.

    
respondido por el Arsenal
2

Como dijo @ ratchet-freak, en términos de tiempo, podría tener el 75% del tiempo que bajó el bus, por lo tanto, si aumenta la velocidad del reloj, su consumo por bus disminuirá siempre que lo haya hecho. El mismo valor para resistencias pull-up. Pero, a velocidades más altas, los valores de resistencia deben reducirse.

Teniendo esto, el consumo del bus será menor, pero los dispositivos esclavos y maestros podrían aumentar su consumo dependiendo de la velocidad del reloj.

Con respecto a su pregunta secundaria, si 3.3kohms se adapta tanto a 4khz como a 32khz, debe verificar la capacitancia de su bus. Esta capacitancia depende de la longitud del bus, la distancia entre las líneas y la cantidad de dispositivos conectados a él. Podría ser difícil calcular la capacitancia real, pero puede verificar la forma de onda de sus datos en el bus en ambas frecuencias y ver si hay alguna distorsión de la señal a 32 kHz usando 3.3k.

    
respondido por el gustavovelascoh

Lea otras preguntas en las etiquetas