¿Microprocesadores para dispositivos SPI múltiples (~ 40)?

7

Estoy pensando en construir un producto que combine más de 40 interruptores de pulsador LCD (ejemplo aquí que se comunica a través de SPI). He estado buscando microprocesadores para manejar esto, pero tengo problemas para encontrar alguno. Lo más alto que ofrece Atmel es de 12 dispositivos ( tal como se encuentra aquí ), y ARM no se ve mejor.

¿Cuál es la mejor manera de controlar tantos dispositivos SPI? ¿Debo vincular varios procesadores juntos en un maestro?

    
pregunta kfriede

3 respuestas

6

Use demultiplexores como el 74HC138 para la selección de esclavos, o use OR-diodos con una selección de matriz.

O si el protocolo lo permite, podría encadenar todos los botones y usar una transferencia SPI larga para todos ellos.

    
respondido por el Ignacio Vazquez-Abrams
4

Una palabra de precaución cuando esté utilizando tantos dispositivos SPI en un solo bus:

  • Capacitancia de entrada.

Esa cantidad de dispositivos pondrá una cantidad masiva de capacitancia en el bus. A menos que tome precauciones, limitará severamente su frecuencia máxima de bus y, por lo tanto, la velocidad a la que puede actualizar el contenido de la pantalla, etc. las ondas cuadradas se parecen más a las ondas sinusoidales, lo que no le gusta a SPI (se mete con la sincronización).

Si está feliz de usar velocidades de comunicación más bajas, entonces está bien. Sin embargo, recomendaría dividir el bus en una cantidad de segmentos más pequeños y almacenar cada señal SCK y MOSI para mantener la capacidad de cada segmento dentro de niveles razonables. Una alternativa es utilizar un único búfer de unidad de alta corriente para reducir la impedancia de salida de los pines SCK y MOSI.

    
respondido por el Majenko
1

NO hay límite a la cantidad de dispositivos SPI que se pueden conectar a un solo SPI, asumiendo que hay suficientes IO para seleccionar el dispositivo correcto.

Pero en la práctica puede haber algunas dificultades cuando el número es más a velocidades más altas. Pero eso es raro.

Puede conectar MISO MOSI y SCK de forma paralela a todos los dispositivos. Pero debe conectar el pin GPIO del controlador al SS (selección de esclavo) de una a una.

Vaya a la expansión o multiplexores GPIO solo si el número de GPIO en el controlador es limitado

    
respondido por el Sanu - Open Maker

Lea otras preguntas en las etiquetas