¿Qué bus es necesario usar y dónde puedo encontrarlo?

0

Estoy tratando de hacer un pequeño sistema de navegación con 6 sensores IMU. El requisito principal es la precisión y la distancia entre el sensor y el maestro. Ahora, en el prototipo, uso I2C, pero la longitud del sensor de conexión del cable y del maestro no debe ser larga. Entonces, la pregunta es qué bus es mejor usar para el intercambio de datos de alta frecuencia en cables de larga distancia (aproximadamente 1 metro).

    
pregunta Eugene

2 respuestas

1

Si va a utilizar seis sensores, entonces es mejor usar I2C, ya que usar SPI requeriría seis selecciones de chip, una para cada sensor.

Por supuesto, esto solo es válido si puede obtener los sensores con una interfaz I2C, y puede configurarlos de manera que cada uno tenga una dirección diferente. Esto generalmente se hace atando los pines de dirección de orden bajo, ya sea alto o bajo. Para seis dispositivos, esto significaría tres pines de dirección A0-A2. Desafortunadamente, muchos dispositivos solo proporcionan dos pines A0 y A1.

En lo que se refiere a la longitud, la interfaz entre el control remoto inalámbrico original de Nintendo Wii y su compañero Nunchuck utilizó I2C sobre un cable de aproximadamente 3 pies de largo. También había cables de extensión de 3 pies que podían extender la longitud total a unos 6 pies. Es posible que las versiones más recientes utilicen un esquema diferente, pero al menos es un ejemplo de I2C sobre un cable muy largo en un producto de consumo ampliamente utilizado.

Originalmente, los dispositivos I2C estaban limitados a 100 kHz. Luego agregaron 400 kHz y el estándar dual de 100/400 kHz duró varios años. Más recientemente, la especificación oficial para I2C se elevó a 1 MHz.

SPI puede ir mucho más rápido; comienza alrededor de 1MHz y puede llegar hasta 50 MHz o menos.

El uso que realices depende realmente de los dispositivos esclavos que elijas usar más que cualquier otra cosa.

    
respondido por el tcrosley
0

Si I2C cumple con sus requisitos de velocidad, no hay nada de malo en usarlo, 1m no es tan largo.

Un aumento en la velocidad podría ser SPI. Pero eso tiene sentido solo cuando los sensores pueden suministrar datos más rápido de lo que I2C puede manejar.

    
respondido por el Wouter van Ooijen

Lea otras preguntas en las etiquetas