Zitat:Was mich aber wundert: Warum benutzt Du die VISA-Funktionen, und warum nicht die GPIB-Funktionen unter Instrumenten-IO/GPIB ? Ich kann mir nicht vorstellen, da bei Dir das EOI beim letzten Byte mit gesendet wird.
ich arbeite immer lieber mit Visa Funktionen, da alleine die Adress-Kontrollen wesentlich cleverer sind als die Adress-Strings der Gpib-Kontrollen. Und alles, was ich bisher über Visa weiß, verstehe ich so, dass es letztlich auf die gleichen Routinen zurückgreift, sobald das Gerät als GPIB identifiziert wird. Trotzdem habe ich die Kommunikation wie oben in meinem kleinen Roman bereits erwähnt auch mit dieser reinen GPIB Schreibroutine durchgeführt (also ziemlich genau dein Beispiel, nur dass der Mode auf 2 steht,
Mode 1 wäre <cr> + EOI), allerdings mit genau dem gleichen Fehlverhalten.
EOI sollte auf jeden Fall mit der Visa-Funktion mitgesendet werden, wenn ich es nicht explizit in den Message based settings ausstelle, zumindest habe ich
die Dokumentation dazu so verstanden
Zitat:Das Datenformat ist bei Dir auch nicht eindeutig. Zu vermuten ist:
0..4095 = 0..4095
4096 = Vorzeichenwechsel-Kommando
4097..8191 = -1..-4095
Richtig so?
Fast. Nur die letzte Zeile würde ich so nicht sehen. Der Vorzeichenwechsel ist hier eine Art NOT - Kommando, welches die Polarität ändert. In der Anleitung wird dann auf explizit davor gewarnt, das Vorzeichen bei bereits angelegtem Strom zu ändern, da sonst die induktive Last während des Feldrichtungswechsels zu hoch wäre. Also sind alle Zahlen > 4096 erstmal gefährlich, da jede Zahl, die das Bit 4 auf 1 setzt zur potentiellen Katastrophe führt. Neben diesem worst case würde ich die Anleitung dann so verstehen, dass er die 3 most significant bits abschneidet und den rest wie gehabt behandelt, also 0 bis 4095 und evtl ein Vorzeichenwechsel.
Danke nochmal für die Lösungsansätze.