INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Visa Open löscht Eingangspuffer



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

08.07.2013, 13:29 (Dieser Beitrag wurde zuletzt bearbeitet: 08.07.2013 13:54 von jg.)
Beitrag #1

Marcusius Offline
LabView-Nutzer
*


Beiträge: 37
Registriert seit: Jan 2008

7.00, 8.61, 2010, 2019
2005
EN

18057
Deutschland
Visa Open löscht Eingangspuffer
Hallöle,

kann es sein, dass das Öffnen einer Visa-Session (COM-Port) den Eingangspuffer löscht?
Ich habe hier einen Aufbau mit einem RS232-Teilnehmer, der in bestimmten Zeitabständen selbstständig Daten an den PC sendet. Öffne ich den Port nachdem das Telegramm eingetroffen ist, so finde ich keine Daten im Puffer.

Kennt ihr dieses Verhalten?

Kann man das Abstellen?

Besten Dank und Grüße
Marcusius
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.07.2013, 13:52 (Dieser Beitrag wurde zuletzt bearbeitet: 08.07.2013 13:53 von Achim.)
Beitrag #2

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Visa Open löschet Eingangspuffer
(08.07.2013 13:29 )Marcusius schrieb:  Öffne ich den Port nachdem das Telegramm eingetroffen ist, so finde ich keine Daten im Puffer.

Woher weißt du dass das Telegramm eingetroffen ist, wenn die Schnittstelle nicht "bereit" ist?

Das Verhalten kenne ich jetzt nicht...aber ich käme auch nie im Leben auf die Idee zu erwarten, dass ein Gerät Daten irgendwie "hält", wenn ich es vorher nicht in Bereitschaft versetzt hätte...

A.

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.07.2013, 14:12
Beitrag #3

Marcusius Offline
LabView-Nutzer
*


Beiträge: 37
Registriert seit: Jan 2008

7.00, 8.61, 2010, 2019
2005
EN

18057
Deutschland
RE: Visa Open löscht Eingangspuffer
Moin Achim,

ich merke ich habe einen Denkfehler. Solange keine Visa-Schnittstelle geöffnet ist, gehen die Daten, die mein Teilnehmer sendet verloren.
Das bedeutet, dass ich meine Schnitzstelle solange offen halten muss, bis Daten eingetroffen sind.

Hintergrund: Ich wollte ein ständiges "Pollen" via Visa Event und Timeout vermeiden.

Nun gut, dann werde ich die Schnitzstelle nicht gleich nach dem Event-Timeout schließen, sondern erneut das Event setzen. Blush

Marcusius
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.07.2013, 10:40
Beitrag #4

Marcusius Offline
LabView-Nutzer
*


Beiträge: 37
Registriert seit: Jan 2008

7.00, 8.61, 2010, 2019
2005
EN

18057
Deutschland
RE: Visa Open löscht Eingangspuffer
Hi.

So richtig klappt das hier bei mir noch nicht. Lasst mich meine Situation noch einmal kurz erklären:

Via 'VISA write' versetze ich meinen Teilnehmer in den Zustand, dass er selbstständig alle paar Sekunden ein Telegramm an den PC sendet. (Funktioniert, via Hyperterminal überprüft). Das genannte Schreiben steckt in einem Sub-VI.

Nun wird Timeout-gesteuert (Event-Struktur) ein Lese-Sub-VI gestartet. Darin befindet sich ein' VISA open', 'Clear', 'Enable Event', 'Discard Event' und schließlich 'Wait on Event'. Am 'Wait on Event' scheitert es aber. Es werden keine eintreffenden Daten erkannt und folglich auch kein Event ausgelöst. Mit den Eventtypen habe ich schon rumprobiert, daran liegt es nicht.

Generelle Frage: Setzt eine' VISA Read' Aktion IMMER eine Write-Aktion vorraus?


Dazu folgende Beoachtung: Wenn ich in meinem Lese-Sub-VI eine kleine Write-Aufforderung unterschummle, die eine Antwort des Teilnehmer erzwingt wird die Antwort ausgelesen (d.h. 'Wait on Event' funktionert). Ich beende dann das Sub-VI aber noch nicht, sondern Lese erst dann alles aus, wenn "Bytes at port" größer als die Schummelantwort ist, was bedeutet, dass ein selbstständiges Telegramm eingetroffen ist. Auf diese Weise erhalte ich mein gewünschtes Telegramm.

Diese Beobachtung führt mich zu der oben gestellten Frage. Aber kann das sein? Es muss doch möglich sein, einen Port zu öffnen und aus eintreffende Daten zu warten! ICh wollte gerade die 'Wait on Event' Funktion nutzen um nicht althergebracht den Port nach der Byte-Anzahl zu pollen.

Marcusius


PS: Achja, nach dem Lesen noch 'VISA Close'
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.07.2013, 12:37
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Visa Open löscht Eingangspuffer
Hallo Marcesius,

- Warum wird der Port ständig aufs Neue geööfnet und geschlossen?
- Wozu brauchst du überhaupt BytesAtPort? Entweder man hat ein TermChar oder man weiß, wieviele Zeichen zu lesen sind...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.07.2013, 12:44
Beitrag #6

Marcusius Offline
LabView-Nutzer
*


Beiträge: 37
Registriert seit: Jan 2008

7.00, 8.61, 2010, 2019
2005
EN

18057
Deutschland
RE: Visa Open löscht Eingangspuffer
Hallo.

Kann man alles machen mit TermChar. Habe ich auch schon probiert. Es liegt ja in erster Näherung nicht am Read. 'Wait on event' liefert mir nichts. Was macht diese Funktion intern? Fragt die auch nur 'Bytes at port' ab?

Das mit dem Öffnen und Schließen habe ich schon beachtet. 'Wait on Event' liegt in einer While-Schleife mit nem Timeout. da wird also nicht ständig geöffnet und geschlossen.

Kann das jemand beantworten: Reagiert 'Wait on event' nur, wenn vorher auf den gleichen seriellen Port geschrieben wurde?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
09.07.2013, 13:08
Beitrag #7

Marcusius Offline
LabView-Nutzer
*


Beiträge: 37
Registriert seit: Jan 2008

7.00, 8.61, 2010, 2019
2005
EN

18057
Deutschland
RE: Visa Open löscht Eingangspuffer
Hmmm.....

Ich habe etwas mit der Parität rumgespielt und siehe da, plötzlich geht es. D.h. ich habe die Parität zunächst falsch eingestellt und nach dem zurücksetzen auf None (wie bei dem Schreib - VI auch) geht es plötzlich. None ist aber immer die Std.einstellung. Erst durch gezieltes verstellen und rücksetzen kommt klappt es erst mit dem 'Wait on Event'.

Kann das einer mal erklären? ... Blink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.07.2013, 20:32
Beitrag #8

Holy Offline
LVF-Stammgast
***


Beiträge: 339
Registriert seit: Sep 2008

2014
2007
EN

09XXX
Deutschland
RE: Visa Open löscht Eingangspuffer
VISA open konfiguriert die Schnittstelle nicht. Das musst du explizit machen und daher kann die Parität ggf. vorher auf etwas falschem stehen. Da du bisher aber keinen Code gezeigt hast ist jetzt nicht zwingend die Erklärung, weil ich natürlich nicht weiss ob du evtl. doch noch was anderes machst ausser die Schnittstelle zu öffnen.
Zitat:Öffne ich den Port nachdem das Telegramm eingetroffen...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.07.2013, 10:33
Beitrag #9

Marcusius Offline
LabView-Nutzer
*


Beiträge: 37
Registriert seit: Jan 2008

7.00, 8.61, 2010, 2019
2005
EN

18057
Deutschland
RE: Visa Open löscht Eingangspuffer
Moinsen.


Dass VISA open nicht die Schnittstelle konfiguriert ist bekannt. Einen entsprechenden Property-node habe ich im Blockdiagramm. Das hatte ich nicht erwähnt in meinem Posting.
An der Parität lag es auch nicht, aber das hat mich zumindest auf die Spur gebracht. Es war letztlich ein Timing-Problem. Dass es daran lag, deckt sich mit meinem ersten Posting in diesem Thread.

Nun läuft die Sache.

Danke für die Hinweise.

Marcusius
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  VISA open/close CPU Auslastung Scuba 4 4.767 25.07.2014 10:39
Letzter Beitrag: cb
  VISA: (Hex 0xBFFF0015) bei VISA read und im VISA Test Panel rick 3 14.316 10.11.2013 12:16
Letzter Beitrag: Y-P
  Visa open & close Labneuling 6 6.008 11.01.2011 12:44
Letzter Beitrag: esz_team
  VISA open und VISA close TSC 12 14.197 24.07.2009 08:44
Letzter Beitrag: RoLe
  visa write; visa read zeitgesteuert ThomasDipl 8 11.522 20.11.2008 06:46
Letzter Beitrag: Achim
  VISA Open & Close References monoceros84 4 5.989 22.11.2007 17:13
Letzter Beitrag: monoceros84

Gehe zu: