LabVIEWForum.de - SubVi in TopLevelVI einfügen

LabVIEWForum.de

Normale Version: SubVi in TopLevelVI einfügen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Danke, genau das war das Problem, die Schleifen im SubVI. Und eben die ShiftRegister durch FeedbackNodes ersetzen, dann rennt es!
zu früh gefreut...

Hallo miteinander,
ich habe mir ein VI gebaut, in dem mehrere, separate Schleifen abgearbeitet werden. Grundkonstruktion ist immer die gleiche, in der While-Schleife ist eine Sequenz, wo wiederum die erste Sequenz den LoopTimer enthält. In den folgenden Sequenzen kommt der Code der Schleife.
Da das ganze zuletzt wirklich unübersichtlich war, habe ich je einen Schleifeninhalt in ein extra VI gepackt (ohne While Schleife) und die ShiftRegister durch Rückkopplungsknoten ersetzt. Folge: es funktioniert nicht mehr.
Grundsätzlich ist jedes ShiftRegister durch einen Rückkopplungsknoten ersetzbar und umgekehrt, aber scheinbar gibt es speziell beim FPGA von Feinheiten zu beachten. Die R-Knoten sind auch initialisiert und verzögern um 1. Auf was muss man noch achten, oder woran könnte es liegen?

Statt der R-Knoten habe ich auch schon versucht, das ShiftRegister nach "aussen" zu ziehen, (siehe Bilder) aber das war leider auch nicht des Rätsels Lösung.
Hab mal ein Beispiel gemacht um das mit Bildern zu erklären, das echte Programm ist größer.

Grüße
Hallo,
da ich mich momentan auch mit FPGA und SubVIs beschäftige, bin ich auf deinen Beitrag gestoßen.
Es könnte noch daran liegen, dass das SubVI als "reentrant" eingestellt ist. Damit wird bei jedem Aufruf das SubVI neu "initialisiert". Solltest du im SubVI also rückkopplungsknoten haben, musst du den reentrant Modus ausschalten. Das kannst du unter den VI Eigenschaften und da unter Execution.
Vielleicht hilft es ja...
[attachment=39802]
Seiten: 1 2
Referenz-URLs