' schrieb:Ich verstehe nicht ganz wie sie beide parallel laufen können.
Alleine die Tatsache, dass die beiden While-Schleifen im Blockdiagramm "parallel angeordnet" sind, ist bereits ausreichend, dass sie parallel abgearbeitet werden. Diesen Sachverhalt nimmt dir ja LV ab. Du merkst davon gar nichts. Eigentlich geht die Sache ja noch viel weiter: Alles, was nicht in einem Datenfluß steht, wird parallel abgearbeitet.
Zitat:Ich denke ein CPU oder in meinem Fall der Controller kann nur ein Sache nach der anderen machen.
Erstens: In deimem Falle doch auch die CPU: Speichern und Samplen tut doch die CPU?
Zweitens: An sich ist das richtig. Nur: "Die CPU arbeitet im Multitasking-Mode". D.h. Jede Task (im Endeffekt also jede While-Schleife) wird zu einem bestimmten Zeitpunkt (eigentlich in einem bestimmten Zeitraum) immer nur ein ganz kleines Stückchen bearbeitet. Den Gesamtzeitraum (z.B eine Sekunde) zerteilt die CPU (eigentlich das Betriebssystem) in kleine Zeitscheiben (z.B. ca. 50µsec). Nun werden der Reihe nach alle Tasks für die Dauer der Zeitscheiben bearbeitet. Nach außen hin sieht das dann aus, als würden die Tasks parallel abgearbeitet werden. Das ganze heißt dann Time-Shareing.
Zitat:Somit wäre es doch egal ob ich samplen und speichern in einer Schleife laufen lasse oder nicht, denn der Controller kann doch nie gleichzeitig samplen und speichern oder ???
Nur wenn in einer Task gesampelt und gespeichert wird, geht es hintereinander. Wenn für beides eine Task besteht, dann kann man es parallel laufen lassen.
Nachtrag:
Hab ich schon wieder was übersehen? Du arbeitest mit einem Controller, d.h. die Daten gehen
nicht per DMA in einen "PC" sondern in ein Echtzeitmodul von NI? Da kenn ich mich aber nicht aus.
Wenn aber das Echtzeitmodul von NI nicht auch parallel arbeiten kann - taugt es aber nicht viel.