(19.02.2012 18:15 )GerdW schrieb: Hallo Santa,
schauen wir uns mal dein VI an:
Was ist daran so alles falsch?
- Du nutzt eine While-Schleife mit autoindizierendem Eingang. Je nachdem, wieviele Devices bei dir über VISA verwaltet werden, ist also nach evtl. 200ms nichts sinnvolles mehr vom VI zu erwarten.
- Du öffnest in jeder Iteration einen VISA-Port, den du nirgends schließt.
- Du fragst direkt nach dem Port-Öffnen die Anazhl der gelesenen Bytes ab. Viel mehr als 1 oder 2 Bytes würde ich da nicht erwarten...
- Wozu fragst du die Byteanzahl ab, wenn du dann doch 11 Bytes lesen willst?
- Du wandelst den String explizit in ein Array - wozu?
- Wozu nutzt du eine Schleife, wenn dich (mangels Autoindizierung) nur der letzte gelesene Wert interessiert? (Mehr kommt in deinem "Array" auch nicht an...)
- Du lässt dir die Baudrate anzeigen - wozu? Das Gerät wird die nicht selbst setzen, dass musst du erledigen...
- Ein Klick auf den Aufräumknopf vor dem Posten hätte auch nicht geschadet...
Hast du dir mal einen der vielen Threads zum Thema "Serielle Schnittstellen" durchgelesen? Lucki hat da schon des öfteren gute Erläuterungen geschrieben...
Guten Tag GerdW,
danke für deinen Post. Wie du siehst bin ich noch am lernen, wie die Programmierung über LabView geht.
Du hast recht, habe einen Port bei jeder Iteration geöffnet und nicht geschlossen, da der "Close" Befehl außerhalb der Schleife ist.
Ich habe mit einem Programm (Termite) herausgefunden, dass das DMM mir 11 Bytes pro Paket sendet. Diese wollte ich eigentlich in einem Array abspeichern und dann weiterverarbeiten. Deshalb sollte der String in ein Array umgewandelt werden. Ist meine Denkens weise so falsch ?
Die Baudrate war "Schwachsinn" an dieser Stelle, wollte schauen ob mir die das DMM auch übergibt.
Ich möchte derzeit nur, das ich den ASCII Code des DMM´s in Labview übertragen bekomme und abspeichern kann. Nur wird mein DMM in LabView als RAW Gerät angezeigt und ich weiß noch nicht so recht wie ich das Programmieren muss. Bzw. wie ich an diese Problematik herangehen muss.
Werde das nächste mal den Besen benutzen, hatte mit ihm nur schlechte Erfahrungen gemacht.....