Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte Überarbeitung Beide Seiten der Revision
private:keyboard_switch [2012/06/01 21:40]
Patrick Wacker Beschreibung geändert
private:keyboard_switch [2012/06/14 18:40]
Patrick Wacker Graphviz des schematischen Aufbaus angepasst
Zeile 25: Zeile 25:
   *    * 
  
 +
 +=== Aufbau ===
 +
 +<​graphviz dot left>
 +digraph aufbau {
 + ​ graph [ rankdir="​TB"​ ];
 +  node [ shape=record,​ fontname=Helvetica,​ fontsize=10 ];
 +  edge [ fontname=Helvetica,​ fontsize=10 ];
 +        ​
 +        subgraph cluster0 {
 +                style="​plaintext";​
 +                color="​invis";​
 +          kb1 [ label="​Keyboard 1", shape="​ellipse",​ style=filled,​ fillcolor=gray ];
 + ​  ​       ms1 [ label="​Mouse 1", shape="​ellipse",​ style=filled,​ fillcolor=gray ];
 +                label = "​required";​
 +        }
 +        ​
 +        subgraph cluster1 {
 +                style="​plaintext";​
 +                color="​invis";​
 +                kb2 [ label="​Keyboard 2", shape="​ellipse",​ style=filled,​ fillcolor=lightgray ];
 +                ms2 [ label="​Mouse 2", shape="​ellipse",​ style=filled,​ fillcolor=lightgray ];
 +                label = "​optional";​
 +        }
 +
 +        subgraph cluster2 {
 +                style="​filled,​ dashed";​
 +                color="​black";​
 +                fillcolor="​lightgrey"​
 +                ​
 +                usbhub [ label="​USB-Hub",​ style="​filled",​ fillcolor="#​e0e0e0"​ ];
 +                keyboards [ label="​Keyboards",​ shape="​oval",​ style="​filled",​ fillcolor="#​e0e0e0"​ ];
 +                mice [ label="​Mice",​ shape="​oval",​ style="​filled",​ fillcolor="#​e0e0e0"​ ];
 +                ​
 +                keyboards -> usbhub [ label="​USB",​ dir="​both"​ ];
 +                mice -> usbhub [ label="​USB",​ dir="​both"​ ];
 +
 +                label = "​optional USB connection";​
 +        }
 +        ​
 +        subgraph cluster3 {
 +                style="​invis";​
 +                client1 [ label="​Client Contr. 1", style=filled,​ fillcolor=lightblue ];
 +                PC1 [ label="​PC 1", shape="​box3d",​ style=filled,​ fillcolor=green ];
 +                client1 -> PC1 [ label="​USB",​ color="​black"​ ];
 +        }
 +
 +        subgraph cluster4 {
 +                style="​invis";​
 +                client2 [ label="​Client Contr. 2", style=filled,​ fillcolor=lightblue ];
 +                PC2 [ label="​PC 2", shape="​box3d",​ style=filled,​ fillcolor=green ];
 +                client2 -> PC2 [ label="​USB",​ color="​black"​ ];
 +        }
 +        subgraph cluster5 {
 +                style="​invis";​
 +                client3 [ label="​Client Contr. 3", style=filled,​ fillcolor=lightblue ];
 +                PC3 [ label="​PC 3", shape="​box3d",​ style=filled,​ fillcolor=green ];
 +                client3 -> PC3 [ label="​USB",​ color="​black"​ ];
 +        }
 +        subgraph cluster6 {
 +                style="​invis";​
 +                client4 [ label="​Client Contr. 4", style=filled,​ fillcolor=lightblue ];
 +                PC4 [ label="​PC 4", shape="​box3d",​ style=filled,​ fillcolor=green ];
 +                client4 -> PC4 [ label="​USB",​ color="​black"​ ];
 +        }
 +        subgraph cluster7 {
 +                style="​dashed";​
 +                client6 [ label="​ . . . \nClient X", style="​solid",​ color="​white"​ ];
 +                PC6 [ label="​ . . . \nPC X", style="​solid",​ color="​white"​ ];
 +                client6 -> PC6 [ label="​USB",​ color="​black"​ ];
 +
 +                client5 [ label="​Client Contr. 5", style="​filled",​ fillcolor="#​d5e3ff"​ ];
 +                PC5 [ label="​PC 5", shape="​box3d",​ style="​filled",​ fillcolor="#​b6ffc2"​ ];
 +                client5 -> PC5 [ label="​USB",​ color="​black"​ ];
 +                ​
 +                ​
 +                { rank="​same";​ "​client6";​ "​client5";​ }
 +                { rank="​same";​ "​PC6";​ "​PC5";​ }
 +                label = "etc. (expandable)";​
 +        }
 +
 +        MC1 [ label="​\rMain Controller",​ fontsize="​14",​ width="​1.70",​ height="​1.00",​ style="​filled",​ fillcolor="​yellow"​ ];
 +
 +        { rank="​same";​ "​MC1";​ "​usbhub";​ }
 +
 +        kb1 -> MC1 [ arrowhead="​open",​ style="​solid",​ label="​PS/​2",​ color="​black"​ ];
 +        ms1 -> MC1 [ arrowhead="​open",​ style="​solid",​ label="​PS/​2",​ color="​black"​ ];
 +        kb2 -> MC1 [ arrowhead="​open",​ style="​solid",​ label="​PS/​2",​ color="​gray"​ ];
 +        ms2 -> MC1 [ arrowhead="​open",​ style="​solid",​ label="​PS/​2",​ color="​gray"​ ];
 +        ​
 +        MC1 -> usbhub [ style="​dotted",​ label="​USB",​ dir="​both"​ ];
 +
 +        MC1 -> client1 [ label="​SPI",​ color="​black"​ ];
 +        MC1 -> client2 [ label="​SPI",​ color="​black"​ ];
 +        MC1 -> client3 [ label="​SPI",​ color="​black"​ ];
 +        MC1 -> client4 [ label="​SPI",​ color="​black"​ ];
 +        MC1 -> client5 [ label="​SPI",​ color="​black"​ ];
 +
 +}
 +</​graphviz>​
Projektwerkzeuge