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!
Ich moechte meine I/O's in SCTL's bearbeiten. Dafuer habe ich 2 Modi, einen Normalen und einen Wartungsmodus.
Im Normalen weden die DI/O Bitweise angesprochen. Im Wartungsmodus hol ich mir nur die U8 Werte der I/O.
Die Modi sind strikt getrennt und koennen nicht gleichzeitig laufen (Case Struktur).
Das Problem ist das man die I/O Nodes nur einmal im SCTL's verwenden kann.
Jetzt ist mein gedanke ein VI fuer den Normalen und eins fuer den Wartungsmodus zu schrieben und vom RT aus zu steuren welches geladen werden soll. Ist dies moeglich. Und wie kann ich zur Laufzeit die VI's im FPGA tauschen?
Ja, das müsste gehen. Mit OpenFPGAVI-Reference wählt man aus, welches VI auf den FPGA geladen wird. Dauert natürlich ggf. ein bisschen, aber funktionieren tut das...
Grüße,
ch
PS: Warum nicht die Case-Struktur um die SCTLs? Das ist auch für die Laufzeit besser, da die Case-Strukturen einen festen Overhead haben...
Die SCTL ist eine Optimierungsmaßnahme, eine 'Compilerdirektive'. Es gibt an den FPGA I/O's nichts zu optimieren. Daher ist es aus meiner Sicht nur sinnvoll sie ausserhalb der SCTL's anzusprechen. Damit erledigt sich das 'Problem' von selbst.
' schrieb:Daher ist es aus meiner Sicht nur sinnvoll sie ausserhalb der SCTL's anzusprechen. Damit erledigt sich das 'Problem' von selbst.
rüchtüüüüüüch. Da das FPGA Programm vermutlich sowieso in einer While-Schleife läuft kann man in der While-Schleife eine State-Machine bauen und in den States eine SCTL für die Optimierung des Codes verwenden. Hab ich schon mehrfach so praktiziert.