La última vez, estaba escribiendo un programa fácil para que algunos procesadores antiguos interactúen con MCP3004 (ADC de Microchip con interfaz SPI). El procesador no tenía implementación de SPI de hardware, así que tuve que escribirlo por mi cuenta.
Para mi sorpresa, el programa no funcionó hasta que cambié el código para alternar CS abajo-arriba-abajo con un poco de retraso cada vez que me comunico con ADC. Siempre antes, estaba seguro de que ChipSelect puede (e incluso debería) (para reducir la cantidad de pines usados) estar físicamente en cortocircuito a tierra cuando uso solo un dispositivo.
¿Hay alguna explicación de por qué esa vez no funcionó: cuando no puedo hacer un CS corto al suelo cuando estoy usando solo un dispositivo SPI?