Raspberry Pi, SPI, datos múltiples en líneas

0

Tengo un ADC que funciona con SPI y lo estoy conectando con un Raspberry Pi 3 Model B. El chip ADC tiene dos ADC con muestreo simultáneo. Hay dos líneas de datos, una para cada ADC. ¿Cómo se implementaría esto en una Raspberry Pi?

Esta es una cita de la hoja de datos de ADC:

'La salida de datos se suministra a cada pin como un flujo de datos en serie. Los bits se registran en el flanco descendente de la entrada SCLK y se requieren 14 SCLK para acceder a los datos. Los datos aparecen simultáneamente en ambos pines a partir de las conversiones simultáneas de ambos ADC. El flujo de datos consta de dos ceros iniciales seguidos de los 12 bits de los datos de conversión. Los datos se proporcionan primero MSB. Si CS se mantiene bajo durante 16 ciclos de SCLK en lugar de 14, luego de los 12 bits de datos aparecen dos ceros finales. Si CS se mantiene bajo durante otros 16 ciclos SCLK en DOUTA o DOUTB, los datos del otro ADC siguen en el pin DOUT. Esto permite que los datos de una conversión simultánea en ambos ADC se recopilen en formato serial en DOUTA o DOUTB usando solo un puerto serial. '

    
pregunta Eduan Shuda

1 respuesta

1

El pasaje de la hoja de datos que citó responde a su pregunta. El A / D puede ser usado para obtener ambas lecturas simultáneamente. Algunas implementaciones de SPI permiten múltiples líneas de entrada, a veces bidireccionales. Si el hardware no tiene esta capacidad, puede implementarlo solo en el firmware.

Alternativamente, puedes ignorar la segunda línea de datos. La primera lectura se envía en los primeros 16 bits, y luego la segunda en los siguientes 16 bits. Esto es compatible con el hardware SPI estándar y común, pero requiere más relojes para obtener los mismos datos.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas