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 

Spezielles Byte nach Eingang weiterverarbeiten, RS232



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!

02.02.2012, 10:39 (Dieser Beitrag wurde zuletzt bearbeitet: 02.02.2012 10:45 von Lucki.)
Beitrag #13

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Spezielles Byte nach Eingang weiterverarbeiten, RS232
(02.02.2012 09:58 )Maxix schrieb:  Die Begrenzung durch das relative Messsystem sind meine (jetzt) „036C“ (Ventil geht net weiter auf). Allerdings ist dies ASCII Code (char), und nicht hex, richtig?
Ich gehe jetzt mal nur auf diesen Satz ein, weil sich hier schon mal ein fundamentaler Irrtum offenbart.
ASCII-Code steht nicht im Widerspruch zu HEX. ASCII-Code kann in Binär-, Oktal-, Dezimal oder Hex- Darstellung sein.
Das Gegenteil von ASCII-Code ist die direkte Übertragung von Bytes.
Beispiel: Wert Dezimal "10"
Bei direktes Byte hat es die Bitfolge "00001010". Hier gibt es keinen Diffenziereung Binär, Dezimal.., das Byte selbst ist immer dasselbe. Bei VISA-Lesen werden die Zeichen aber immer als Text interpretiert. In diesem Falle wäre das ein Linefeed. Das Linefeed ist kein Linefeed, sondern der Wert 10, wenn es sich nicht im ASCII-Code handelt.

Der ASCII - Wert der Zahl 10 hängt davon ab, in welchem Zahlensystem man es Codiert. Vom gesamten ASCII-Zeichensatz werden hier nur die wenigen Zeichen von 0..9, A..D verwendet. Also:
Binär: "1010" = 8-stelliger String
Dezimal: "10" = 2-stelliger String
Hex: "A" = 1-stelliger String

Der Nachteil der direkten Wertübertragung ist, daß man die ganzen Steuerzeichen, wie z.B. <LF>, nicht mehr benutzen kann, da diese Bytes jederzeit mitten in den Zahlen vorkommen können. Der Vorteil ist natürlich offensichtlich: Für direkte Übertragung eines 32Bit Integers brauche ich 4 Byte, für die Übertragung als ASCII-HEX aber 8 Byte.

Trotzdem: Der Standard bei serieller Übertragung ist der ASCII-Code - man möchte auf die Steuerzeichen nicht verzichten. Und nur damit hast Du es in Deinem Fall zu tun. Ob es sich um HEX- oder DEC- Code handelt , das mußt Du aus dem Manual selbst herausfinden, das können wir nicht wissen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
RE: Spezielles Byte nach Eingang weiterverarbeiten, RS232 - Lucki - 02.02.2012 10:39

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  dynamische Byte-Anzahl einer Nachricht Gottimp 6 5.418 23.03.2021 18:15
Letzter Beitrag: GerdW
  Problem: Empfangene Byte Anzahl ändert sich MKVH28 7 7.050 26.03.2015 17:39
Letzter Beitrag: Lucki
  Byte (hex) erzeugt Timeout im VISA Lolleg 2 4.507 06.06.2014 13:26
Letzter Beitrag: Lolleg
  Jeweiliges High und Low Byte richtig zusammenfügen rookieNo.x 2 8.293 29.10.2012 18:43
Letzter Beitrag: rookieNo.x
  Delay nach jedem gesendeten Byte hans75 5 6.617 21.09.2010 16:13
Letzter Beitrag: GerdW
  VISA Read - Byte Count Wert LabVIEWDompteur 5 11.802 13.05.2009 12:13
Letzter Beitrag: rolfk

Gehe zu: