desktop

Modo master en comunicacion SPI

no existe una forma de colocar una sola linea de maestro, para 4 esclavos porq estoy pensndo a futuro y la meta es tener minimo 4 o 5 esclavos conectados al bus ...gracias por las respuestas
 
Bueno, esa es una desventaja de SPI, el precisar una línea de selección para cada esclavo.

Ojo eh?, algunos módulos SPI empiezan a venir con detección de dirección; es decir, leen el primer dato del bus SPI como dirección, la comparan con una interna, y de ser así toman la línea MISO = SDO del esclavo = SDI del maestro. Esa característica se puede usar con dispositivos que permitan deshabilitar la línea de salida (dejarla en alta impedancia) pero pueden seguir escuchando lo que viene por MOSI = SDO del maestro = SDI del esclavo.
El dspic30f4011 por ejemplo incorpora un bit de control DISSDO que puede usarse con esa finalidad.

Lo único que se me ocurre para minimizar al máximo las entradas/salidas de los microcontroladores (tanto esclavos como maestros) sin complicar mucho la cosa (sin meter demasiados componentes externos), sería usar un registro de desplazamiento para seleccionar esclavos.
Va a tener la particularidad de que solo 1 de las salidas puede valer 0 en cualquier momento. Así que pensando en esa característica lo que mejor encajaría sería un contador jhonson.

Un integrado que implementa un contador Jhonson es el 74hc4017.

Bueno, creo que usar un contador Jhonson puede ser una buena alternativa. Ahí con una sola salida del maestro podrías manejar hasta 10 líneas de esclavos.

Saludos
 
Atrás
Arriba