' schrieb:Die Daten die ich herausfiltern möchte kommen meist unmittelbar als Anwort auf einen Steuerbefehl. Das passiert meist jedoch so schnell unmitelbar nach dem Absenden, dass mein VI auf einem 500 Mhz P3 unter WinXP wahrscheinlich nicht schnell genug hinterherkommt.
Das glaube ich nicht. ich hatte mal eine Notebook mit schlappen 133 Mhz und habe damit auch serielle kommunikationen mit 115200 Bit/sek gemacht.
Zitat:Irgendwie muss ich das Aulesen wohl gleichzeitig zum Senden des Steuerbefehls realisieren.
Das glaube ich auch nicht.
Deine Peripherie antwortet auf einen Steuerbefehl. (Zitat: >>Jede zurückgesendete Antwort auf einen Steurbefehl <<).
Es wartet mit sicherheit auch auf ein "ende"-Zeichen.
Also fängt es erst an zu senden, wenn das Ende - Zeichen angekommen ist. Dann kannst Du doch locker von einer Write auf eine Read Funktion wechseln. Dein Rechner ist schnell genug. Mit Sicherheit.
Und selbst wenn Senden und Empfangen gleichzeitig geschehen WÜRDE, dann sind die Daten ja nicht verloren, sondern im Empfangs-puffer.
Den kannst du ja auslesen, wann du möchtest (vorrausgesetzt er läuft nicht über).
Und sonst: Was spricht dagegen eine VISA-read und eine VISA-write Funktion nebeneinander laufen zu lassen? Ich glaube das müsste gehen.
Habe es noch nicht getestet. Du könnstest einfach den VISA-resource-name an die beiden Routinen kopieren und dann müsste es laufen.
Zitat:Egal welche Anzahl der zu lesenden Bytes ich angebe, ich erhalte jedes mal so eine Meldung mit einem "Rahmensynchronisationsfehler" bei VISA-read. Was ist ein Rahmensynchronisationsfehler genau? Wie kommt sowas zustande? Und was kann ich dagegen tun?
Das bedeutet, dass die Bits, die ja in einem bestimmten Zeitrahmen gesendet werden SOLLTEN, eben nicht in diesen Rahmen passen.
Das kann mehrere Gründe haben:
1. Die Einstelleungen stimmen nicht überein (baudrate, parität, Stop-und Datenbits)
2. Leitung zu lang, nicht genügend geschirmt
3. Störquellen, wie Starkstromkabel, Magnetfelder usw.
Wenn Du den Fehler immer hast, tippe ich auf die 1. Möglichkeit.
Wenn der Fehler nur ab und zu auftaucht, tippe ich auf die 2. oder 3. Möglichkeit.
Ich hoffe es hat dir ein wenig geholfen...
<div align="left"> </div>