¿Debo usar 2 dispositivos SPI en Arduino UNO / PRO o 2 dispositivos I2C?

3

Estoy utilizando una placa de arranque microSD y el acelerómetro ADXL345 enlace .

cada uno solo funciona perfectamente bien, pero una vez que coloco ambos (compartiendo los pines 11,12,13, pero con pines CS diferentes) nada funciona.

Estoy usando otro sensor con el I2C que es el BMP085: enlace

El acelerómetro también funciona en I2C, pero eso requiere resistencias pull-up cuando varios dispositivos comparten I2C.

Quería SPI ya que parecía más simple donde solo puedo especificar el CS y todo debería haber funcionado.

¿Me estoy perdiendo algo en el caso SPI? ¿Es mejor compartir dispositivos en I2C en lugar de SPI?

    
pregunta himura

1 respuesta

2

La elección realmente hace poca diferencia cuando se utilizan las bibliotecas de Arduino. Debería ver el mismo tipo de rendimiento.

En cuanto a las resistencias pullup i2c, la placa BMP085 a la que se vincula ya tiene pullup en la placa, conectada a un puente de soldadura cerrado. Esos mismos pullups deberían ser suficientes para ambos sensores, por lo que no necesitarías agregar más.

Pero no hay razón para que el sensor no funcione también en SPI con una tarjeta SD. ¿Has comprobado que has atado todos los motivos? ¿Cómo no funciona? ¿Solo funciona para una lectura / escritura antes de fallar? ¿Te estás asegurando de conducir ambos pines CS a alto / bajo, en lugar de dejar uno como entrada flotante?

    
respondido por el Passerby

Lea otras preguntas en las etiquetas