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 

Dieses Thema hat akzeptierte Lösungen:

Serielle Schnittstelle auslesen bis Stringende



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!

26.07.2013, 08:22
Beitrag #1

ragingbull Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jan 2009

2011
2010
EN


Deutschland
Serielle Schnittstelle auslesen bis Stringende
Hallo zusammen,

ich habe ein Problem mit einem Messgerät das ich über die RS232 abfrage.

Mir wird als Messwert ein String geliefert der unterschiedlich lang sein kann.

Wenn ich jetzt das Visa Read nicht genau einstelle ( wieviele Bytes will ich lesen ) dann bricht mir das Programm ab mit Timeout.

Gibt es eine Möglichkeit die Serielle Schnittestelle abzufragen und auf End of Text zu reagieren?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.07.2013, 08:24
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.412
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Hallo bull,

stell doch beim SerialPortInit einfach das passende TermChar (bei dir EOT) ein...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 08:43 (Dieser Beitrag wurde zuletzt bearbeitet: 26.07.2013 08:51 von ragingbull.)
Beitrag #3

ragingbull Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jan 2009

2011
2010
EN


Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Danke das wusste ich garnicht das das geht.

Mein String sieht so aus.

dP2000,100,500,200;#dS;#dD;1,#

Auf was frage ich jetzt ab???

\r\n kann ich ja nicht eintragen da ein Integer Wert erwartet wird
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 08:57
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.412
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Hallo bull,

du kannst aber \n eintragen (bzw. sollte das schon der Standardwert sein)!

Zitat:\r\n kann ich ja nicht eintragen da ein Integer Wert erwartet wird
Es wird kein "Integer", sondern ein U8 erwartet! U8 = Char = ASCII-Wert...

Zitat:Mein String sieht so aus. dP2000,100,500,200;#dS;#dD;1,#
Und wo soll da das genannte \r\n sein? Hat dein String nun TermChars oder nicht?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 09:02
Beitrag #5

ragingbull Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jan 2009

2011
2010
EN


Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Über TermChars weis ich nichts. Steht nichts in der Doku.
Ich habe den Hersteller angeschrieben mit \n gehts nicht.
Ich lade wohl mal das VI hoch

\n\r ist End of Line
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 09:04 (Dieser Beitrag wurde zuletzt bearbeitet: 26.07.2013 09:11 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.412
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Hallo bull,

Zitat:\r\n kann ich ja nicht eintragen ... \n\r ist End of Line
Was denn nun? "\r\n" oder \n\r"? Sind diese Zeichen in deinem String oder nicht? Wenn ja, in welcher Reihenfolge?

\n\r ist übrigens nicht EOL! Das ist ein LF, gefolgt von CR... (ASCII)

Zitat:Über TermChars weis ich nichts. Steht nichts in der Doku.
TermChar nennt sich der Eingang am SerialPortInit.

Zitat:Ich habe den Hersteller angeschrieben mit \n gehts nicht.
Manchmal soll es helfen, Hersteller und Gerätetyp zu nennen - und wenn der OP ganz gut ist, postet er einen Link auf das Manual zur Hardware...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.07.2013, 09:13
Beitrag #7

ragingbull Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jan 2009

2011
2010
EN


Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Dazu gibt es keinen Link da es eine Sonderentwicklung einer kleinen Messtechnikbude ist

http://digital.ni.com/public.nsf/allkb/8...BE005AB500

es ist \r\n
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 09:18
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.412
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Hallo bull,

Zitat:es ist \r\n
Dann stelle \n als TermChar beim SerialPortInit ein und stelle die zu lesende Bytezahl höher als nötig beim VISARead - und gut ist...

Geht es dir jetzt um den Empfang von Daten oder um das Senden von Befehlen? Dein verlinktes Dokument bezieht sich auf das Senden von Daten, du redest bisher über den Empfang von Daten...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 09:21
Beitrag #9

ragingbull Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jan 2009

2011
2010
EN


Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Es geht mir ums empfangen.

Mit \n geht es nicht.

Wenn ich auf # abfragen könnte wäre ideal. Das ist immer das letzte Zeichen. Allerdings kommt das halt nicht nur einmal vor.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.07.2013, 09:24
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.412
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Serielle Schnittstelle auslesen bis Stringende
Hallo bull,

Zitat:Mit \n geht es nicht.
Warum nicht, wenn dein String, wie du schreibst, mit \r\n abgeschlossen wird?

Zitat:Wenn ich auf # abfragen könnte wäre ideal. Das ist immer das letzte Zeichen. Allerdings kommt das halt nicht nur einmal vor.
Genau. Deshalb nimmt man auch ein eineindeutiges TermChar wie \n...

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
  Serielle Schnittstelle: Unterschied zwischen FIFO-Buffer und VISA-Buffer Exle 4 6.050 23.01.2019 08:07
Letzter Beitrag: Ratio
  Serielle Schnittstelle hängt nach gewisser Zeit auf Kiesch 8 8.953 08.01.2018 11:06
Letzter Beitrag: Kiesch
  Serielle Schnittstelle bricht ab -cosmo- 7 6.549 28.09.2017 12:13
Letzter Beitrag: Lucki
  VISA: I/O Fehler beim Auslesen einer seriellen Schnittstelle konne 5 6.500 19.07.2017 13:04
Letzter Beitrag: konne
  Serielle Schnittstelle usbser.sys BlueScreen Hachiko 18 16.627 03.04.2014 20:53
Letzter Beitrag: hyla
  Serielle Schnittstelle Auslesen Gre5or 3 7.084 01.10.2013 10:38
Letzter Beitrag: GerdW

Gehe zu: