Débil desplegable para SPI

0

Estoy usando Arduino (no importa) y 8 x 12 bit ADCs para leer algunos valores. Creé un prototipo que consta de un registro de cambios (SR) y todas las salidas de SR están conectadas al pin de selección de chip del ADC individual. Durante el arranque, configuro todas las salidas de SR como ALTAS.

Selecciono el ADC tirando la salida específica del SR como BAJA y luego hablo con el ADC. Tan pronto como finalice mi comunicación, de nuevo configuro toda la salida de SR como ALTA. Todo esto está funcionando.

Durante algunas pruebas, encontré que si todos los SPI (ADC) se ponían ALTOS (ninguno debería estar hablando) y si leía MISO, obtenía algunos datos aleatorios. Me di cuenta de que MISO estaba flotando y agregué un desplegable de 100K (¡desplegable débil!) Que solucionó esto. Después de esto, si escuché el MISO mientras todos los ADC estaban ALTOS, todo lo que obtengo son 0s (¡Yey!).

Mi pregunta es que ¿tiene sentido también bajar MOSI y CLOCK? ¿Creará algún problema?

    
pregunta Anuj Purohit

1 respuesta

2

No deberías tener que bajar las líneas MOSI o Clk.

Master Out Slave In es una salida de su controlador, al igual que la línea Clk. A menos que hagas algo que convierta esos pines en entradas, deberían estar bien sin resistencias desplegables o desplegables.

Por otra parte, Master In Slave Out es una entrada al controlador. Cuando no se selecciona ninguno de tus chips ADC, esa línea flota. Necesita la resistencia que agregaste.

    
respondido por el Dwayne Reid

Lea otras preguntas en las etiquetas