Coole Sache, danke!
Also wenn ich das richtig verstehe, dann sucht LabVIEW einfach wo in dem Array das True steht und die Nummer des Eintrags kann ich das als "Case" ausführen.
Jetzt habe ich das mal versucht nachzubasteln und habe da noch ein paar Fragen:
Wenn ich das richtig sehe, dann wird bei jedem Durchlauf der Schleife auf jeden Fall der "Default" Case ausgeführt. Das heißt, wenn ich 8 Knöpfe habe muss ich einen Array mit 9 Einträgen basteln wobei der erste Boolean sowas wie eine Dummy Variable / Konstante ist? Und den Default Case kann ich ja prinzipiell leer lassen.
Jetzt sieht es nur so aus, dass sich meine 8 Unterprogramme dadurch unterscheiden, dass ein Befehl an eine andere Slaveadresse geschickt wird (1 bis 8) vom Master aus. D.h. ich kann das ganze schlanker ansetzen, indem ich nicht in jeden Case das Unterprogramm setze, sondern das Unterprogramm anschließend Setze und in jeden Case nur die Nummer, die an das Unterprogramm geschickt werden soll.
(siehe angehängtes Bild)
Nun habe ich aber das Problem, dass auch in dem Default Case eine Nummer stehen muss sonst bekomme ich eine Fehlermeldung "Missing Tunnel Assignment". Da könnte ich jetzt einfach eine Null hinschreiben und die nach außen leiten, aber dann setzen meine Slaves alles auf Null.
Also jetzt zwei Möglichkeiten, die ich als Lösung überlege:
Ich kann das Programm nicht dazu bringen, dass es ständig ausgeführt wird und den Default Case verwendet, falls niergends ein True steht? Denn wenn ich das Programm anhalten könnte, so kann ich den Default Case ja als meine Slaveadresse Nr. 1 verwenden.
Und zweitens ich kann LabVIEW nicht dazu bringen im Default Case keine Nummer nach außen leiten zu wollen?
Cheers.