Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
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
14.05.2012, 15:34 (Dieser Beitrag wurde zuletzt bearbeitet: 14.05.2012 15:35 von RoKi0815.)
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...