Actualmente estoy escribiendo código C ++ para utilizar el protocolo SPI. Estoy usando la biblioteca popular como una guía. Me encontré con pocas áreas cuestionables y después de una discusión en el foro del tablero de la biblioteca me dijeron "es un problema interno" (del hardware). Para ser específico: utilizando el "puerto" MOSI, puedo "escribir" en el hardware y monitorear el resultado a través del software. Ninguno de los puertos MOSI o CLK están conectados a ningún dispositivo esclavo SPI. No tengo problemas allí. Cuando "leo" el puerto MISO, nuevamente no estoy conectado al dispositivo esclavo, no espero datos válidos, no hay una señal MISO real. Eso está bien.
Sin embargo
¡El maestro NO envía CLK en absoluto! El dispositivo maestro / dispositivo vacía el / los búfer (es) que se llenan DURANTE los ciclos de "escritura" DURANTE la "lectura" de la operación del esclavo.
Mi pregunta general real que me gustaría que me respondieran es
¿El SPI maestro requiere una conexión física con el esclavo para enviar CLK al esclavo durante las operaciones de lectura del esclavo?
Según la documentación de SPI: el maestro envía CLK durante la "escritura" al esclavo y envía CLK durante la "lectura" desde la salve. Master SPI es la fuente de CLK. Solo la parte de "escritura" de SPI funciona como se espera.