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, 09:58
Beitrag #11

Maxix Offline
LV-Neueinsteiger ; )
*


Beiträge: 10
Registriert seit: Feb 2012

2010 fully loaded ; )
2012
DE

38xo0
Deutschland
RE: Spezielles Byte nach Eingang weiterverarbeiten, RS232
Moin,
danke für die weiteren Ratschläge und das Erstellen des VI.


In der Anleitung des Stellmotors steht, dass die Daten im ASCII Code kommen.
Bei der Definition der Bytes steht dann:

$Kxxxx<LF>

$K Kennung Istposition
xxxx Istposition, 0x0000 bis 0x0480, (Begrenzung durch relatives Messsystem)
<LF> Line-Feed

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?
Das dort „0x“ vor der 0000 bzw. 0480 steht verwirrte mich, denn ich hatte gelesen, dass Hexadezimalzahlen durch die Folge von „0x“ angekündigt werden. Wenn man sich dies Ziffer für Ziffer nach der angehängten Tabelle entschlüsseln würde, kämen nur irgendwelche Befehle aber keine Werte zustande.

Zum Verständnis:
Habe ich ein ASCII Zeichen, kann ich dieses in hex, dez oder binär ummünzen. Aus jedem System lässt es sich wieder zurück ins ASCII Zeichen „holen“, oder in eines der anderen Formate ändern.
Wenn ich jetzt aber das eigentlich Zeichen als hex angebe, hat es doch eine ganz andere Bedeutung oder nicht?
Sprich:
ASCII „30“
Ist nicht
Hex „30“.

Wenn ich nun in die beiden VIs schaue und dort von einem Hexadezimal-String in eine Zahl umgewandelt wird, frage ich mich, ob das richtig ist.
Es kommt ein ASCII Code durch das VISA herein. Der Baustein nimmt dann diesen Wert und geht davon aus, dass es ein Hexwert ist. Anschließend wandelt er diesen in eine Zahl (eine Dezimalzahl nehme ich an).
Stört das gar nicht, bzw. ist das nicht „eigentlich“ falsch?
Die Bedeutung der „0“ bei Hex ist ja eine andere als wenn es sich um eine ASCII Chars „0“ handelt.
In der Hilfe steht:
„Interpretiert die Zeichen 0 bis 9, A bis F und a bis f in String beginnend am Offset als eine ganze Hexadezimalzahl und zeigt diese in Zahl an“.
Heißt für 036C dann (C=12)*1 + 6*16 + 3*256 + 0*4096 = 876 (ist auch der ausgegebene Wert).
Nehme ich die 036C in ASCII und wandel sie in hex um, ergibt das 30 33 36 43.
Wandelt man dies in eine Dezimalzahl, ergibt es: 808662595
Im Endeffekt müsste das Verhältnis ja immer gleich bleiben und ich kann auch aus dem Wert „876“ eine Prozentangabe erzeugen. Aber ich möchte gerne ein wenig dahinter steigen und bin gut durcheinander : )

Wäre super, wenn mir das jemand erklären/bestätigen kann.

Gruß

Justus


Angehängte Datei(en) Thumbnail(s)
   

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


Nachrichten in diesem Thema
RE: Spezielles Byte nach Eingang weiterverarbeiten, RS232 - Maxix - 02.02.2012 09:58

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

Gehe zu: