Hallo Christian,
Zitat:ohne dass ich ihnen vor dem DAQmx Start einen Wert zugewiesen habe und bisher gab es nie Probleme
Dies ist gut möglich, wenn es sich um Tasks ohne "kontinuierliches" Sampling handelt.
Zitat:zumal, wenn ich einen Write vor dem Start setze ein anderer Fehler auftaucht (Operation kann nicht durchgeführt werden während der Task ausgeführt wird).
Du konfigurierst die Ausgabe von 5kS/s und startest den Task mit leerem Buffer. Was soll DAQmx anderes tun, als eben dies zu bemängeln?
Zitat:Wegen der Einzelwert abfrage. Diese ist für mich programmiertechnisch einfacher.
"Programmiertechnisch einfacher" bedeutet leider nicht "fehlerfrei" und "CPU-Last geringer"...
Zitat:Ich dachte durch die Rate geb ich eben die Schleifenrate vor und mit Kontinuierlich wird das so lange geschehen bis der Stop-Button gedrückt wird.
Falsch gedacht. Die Schleifenrate wird durch die Geschwindigkeit der DAQmx-Treiberaufrufe bestimmt. Und der Overhead für eine Einzelwertabfrage ist nahezu der gleiche wie für die Abfrage von "n Samples" mit Blockgrößen von fs/10...
Außerdem:
- Zeitkritische Dinge kann man in parallele Schleifen verlagern (bei dir evtl. AI- und AO-Task in eigene Schleifen verlagern).