Conexiones de cadena USB

3

Tengo dos preguntas relacionadas con las conexiones USB en una pcb:

1- ¿Es posible conectar la línea D + entre 2 dispositivos y 1 host? ¿Algo así como la moda SPI donde las líneas MISO y MOSI se comparten entre todos los esclavos? ¿O como I2C, donde cada nodo escucha el bus y responde solo cuando se llama a la dirección dada? Lo mismo con la D-.

2- Estoy diseñando una aplicación integrada con 2 dispositivos, uno de ellos es un dispositivo USB y el otro es un USB-OTG. Cuando la comunicación es entre ellos, creo que no hay problema, el OTG se comporta como un host y el segundo como un dispositivo. Sin embargo, mi pregunta surge cuando necesito conectarlos (tanto como dispositivos) a una PC externa, ¿es posible compartir las líneas de señal a la PC externa, por lo que tendré 3 dispositivos conectados en la línea: uC USB-device, USB-OTG programado como dispositivo y PC USB-host.

    
pregunta masm

2 respuestas

1
  

1- ¿Es posible conectar la línea D + entre 2 dispositivos y 1 host? ¿Algo así como la moda SPI donde las líneas MISO y MOSI se comparten entre todos los esclavos? ¿O como I2C, donde cada nodo escucha el bus y responde solo cuando se llama a la dirección dada? Lo mismo con la D-.

No.

  

2- Estoy diseñando una aplicación integrada con 2 dispositivos, uno de ellos es un dispositivo USB y el otro es un USB-OTG. Cuando la comunicación es entre ellos, creo que no hay problema, el OTG se comporta como un host y el segundo como un dispositivo. Sin embargo, mi pregunta surge cuando necesito conectarlos (tanto como dispositivos) a una PC externa, ¿es posible compartir las líneas de señal a la PC externa, por lo que tendré 3 dispositivos conectados en la línea: uC USB-device, USB-OTG programado como dispositivo y PC USB-host.

Si desea que esto funcione, es probable que necesite un chip concentrador USB y dos chips mux USB. El concentrador se conecta a la PC externa, luego los muxes se utilizan para conectar los dispositivos integrados entre sí o al chip concentrador según sea necesario.

    
respondido por el Peter Green
16

No, no es posible hacerlo por un montón de razones que van desde la terminación de hardware y las resistencias de identificación en las líneas D + / D hasta los problemas de protocolo que podrían identificar y manejar múltiples dispositivos en un solo puerto. A pesar del uso engañoso de la palabra "Bus" en el nombre, USB solo es capaz de conectar un solo puerto de host a un solo puerto de dispositivo. Cualquiera de estos puertos puede ser un puerto OTG, pero un pin adicional en el cable / conector se encargará de cambiar un extremo al modo host y el otro al modo dispositivo, según sea necesario.

La única forma de conectar varios dispositivos a un solo puerto host es usar un concentrador USB.

    
respondido por el Finbarr

Lea otras preguntas en las etiquetas