Realmente no se puede incluso hacer una elección sin la determinación de la capa física (PHY), pero algunas ideas:
Si el sistema realmente se encadenan como se dibuja a continuación, llevar hasta cada uno de los dispositivos en orden. Fábrica de programa a la "dirección de difusión" si el PHY tiene uno (como I2C). A continuación, sólo tiene cada dispositivo de elegir una dirección y enviar a esa dirección con el siguiente dispositivo a medida que se mueve hacia abajo en la cadena.
Si el uso de 8bit Uidos, usted obtendrá puntos de bonificación, por lo menos de mí, si escribes algo cómico en ASCII con las direcciones:
Maestro: "Hey, dispositivo 1, elija una dirección"
Equipo 1: "M", hey dispositivo 2 elija una dirección
Dispositivo 2: "y"
Dispositivo 3: "B"
Dispositivo 4: "oh"
Dispositivo 5: "s"
El dispositivo 6: "s"
Dispositivo De 7: "S"
Dispositivo de 8: la "u"
Dispositivo 9: "c"
Dispositivo 10: "k"
Dispositivo 11: "s"
Alternativamente, si su diseño tiene un número fijo de dispositivos: yo tenía un diseño que utiliza un chasis que permite hasta 4 tarjetas para estar conectado. Lo que terminé haciendo lo que la colocación de un I2C basado GPIO expansor en el plano posterior (en realidad era un fan control IC necesitaba de todos modos, yo sólo tomé una y la interfaz I2C y algunos de los GPIOs).
Me hizo pasar a una GPIO a través de cada borde de la tarjeta del conector del pin reset de la DSP en cada enchufe de la tarjeta. Todos los DSPs de fábrica programado para el 1 de dirección. El controlador del sistema trajo las ranuras de restablecimiento de 1 a la vez, un I2C comando fue enviado, si algo ACKed se suponía que la ranura fue poblada y un comando fue enviado para que cambie su dirección I2C para un UID para que la ranura. Esto se hizo para cada ranura con un razonable tiempo de respuesta.
Si su un bus compartido que capaz de esclavo de iniciar las transferencias, también conocido como multi-maestro. Sólo tiene el dispositivo esclavo ejercer el control del autobús y preguntar al maestro de la dirección, el maestro sólo le da la siguiente dirección en línea, creo DHCP. Mismos puntos de bonificación como el anterior.
Si el PHY es maestro y tiene un completo desconocido número de dispositivos....conexión en cadena de un GPIO a través de ellos y el uso que para el control de si responden a una programados de fábrica dirección? Luego, cuando el esclavo obtiene su dirección, de-afirma el siguiente dispositivo en línea? De esta manera usted sólo necesita 2 pines GPIO por dispositivo y 1 para el maestro y usted puede traer los dispositivos de una en una. Debería funcionar, creo.
De todos modos, la honestidad a toda especulación hasta que se elija un PHY y puede decirnos más acerca de cómo el sistema en su conjunto está conectado.